我有两个实体:
这个实体有很多关系。但我想在我的“多对多关系”表中添加第三个字段,该表调用"排序"。
我的解决方案是创建三个实体
问卷
页
QuestionnairePage
实体调查表和页面与实体调查表页面具有一对多关系,并且我的新实体"问卷页面"中存在附加字段排序。
但我有以下问题。如果我将一个Questionnaire对象传递给我的twig模板来渲染所有Pages(示例页面标题),我无法访问我的Page对象,我只能访问QuestionnairePage.page对象,这是一个id。但我需要Page对象。
我的树枝模板看起来像
{% extends 'base.html.twig' %}
{% block body %}
<h1>{{ questionnaire.title }}</h1>
<h2>{{ questionnaire.subtitle }}</h2>
<p>{{ questionnaire.description | raw }}</p>
{% for p in questionnaire.questionnairePage %}
{{p.id}} // This the QuestionnairePage.page.id
{% endfor %}
{% endblock %}
有人可以给我一个提示,我该如何解决我的问题?
答案 0 :(得分:1)
您需要将getQuestionnaire()
方法(将返回$this->questionnaire
)添加到QuestionnairePage
实体并在树枝中使用它
{% extends 'base.html.twig' %}
{% block body %}
<h1>{{ questionnaire.title }}</h1>
<h2>{{ questionnaire.subtitle }}</h2>
<p>{{ questionnaire.description | raw }}</p>
{% for p in questionnaire.questionnairePage %}
{{p.questionare}} // This should be the Questionnaire object
{% endfor %}
{% endblock %}