有许多额外的领域

时间:2016-02-18 14:48:44

标签: symfony

我有两个实体:

  • 调查问卷

这个实体有很多关系。但我想在我的“多对多关系”表中添加第三个字段,该表调用"排序"。

我的解决方案是创建三个实体

  • 问卷

  • 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 %}

有人可以给我一个提示,我该如何解决我的问题?

1 个答案:

答案 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 %}