如何在循环中连接两个Twig变量

时间:2015-07-30 07:40:52

标签: php symfony templates twig

我试图创建动态变量名称,以便结果如下所示

{{ form_label(form.user_1) }}
 {{ form_label(form.user_2) }}
 {{ form_label(form.user_3) }}
 {{ form_label(form.user_4) }}

这是我到目前为止所尝试的内容

{%  for user in users %}
      {{ form_label(form.user~'_'~loop.index) }}
 {% endfor %}

但是

  

参数1传递给   Symfony \ Component \ Form \ FormRenderer :: searchAndRenderBlock()必须是   Symfony \ Component \ Form \ FormView的实例,给定的字符串

我做错了什么?

1 个答案:

答案 0 :(得分:4)

我认为you have to use the attribute() function

如果这不能与方法参数中的串联一起使用,请尝试首先在变量中连接它,如下所示:

{% set userIndex = 'user_' ~ loop.index %}

然后你应该试试这个:

{{ form_label(attribute(form, userIndex)) }}