Symfony4 twig for循环通过变量

时间:2018-02-04 12:00:05

标签: twig symfony4

我有很多子实体,所以我想重新添加/更新它们重用一个控制器,查看。 所以我需要在每个表单打印出已创建的子实体列表之前。 子实体名称是变量

{% form_theme form 'bootstrap_4_horizontal_layout.html.twig' %}
<table class="table">
    {% for entity in parentEntity.{{  subEntityName }} %}
    <tr>
        <td>{{ entity }}</td>
    </tr>
{% endfor %}
</table>
{{ form_start(form) }}
{{ form_widget(form) }}
{{ form_end(form) }}

但这不起作用,也是

~ subEntityName ~

不起作用

无法找到任何建议。可以在树枝循环定义中使用变量

2 个答案:

答案 0 :(得分:1)

找到解决方案

{% set entities =  attribute(parentEntity, entityName) %}
{% for entity in entities %}
<tr>
    <td>{{ entity }}</td>
</tr>
{% endfor %}

这对我来说就像一个魅力!

答案 1 :(得分:0)

您可以简单地执行以下操作:

,而不是创建新变量entities
{% for entity in attribute(parentEntity, entityName) %}

而不是使用attribute function,您可以使用括号表示法,至少parentEntity是一个数组:

{% for entity in parentEntity[entityName] %}