4

我正在为新用户注册定义自己的 twig 布局,除了 FOSUserBundle 中的 plainPassword 字段外,我已经按照我想要的方式布置了所有内容。

<p class="left">
   {{ form_widget(form.plainPassword) }}
</p>
<div class="clearfix"></div>

上面的代码显示了密码和验证块。我想将其分解为 form.plainPassword.label、form.plainPassword.field、form.plainPassword2.label 和 form.plainPassword2.field 的 4 个元素。我无法弄清楚在form_label()andform_widget()调用中放入什么。

<p class="left">
   {{ form_label( ??? ) }}
   {{ form_widget( ??? ) }}
</p>
<p class="left">
   {{ form_label( ??? ) }}
   {{ form_widget( ??? ) }}
</p>
<div class="clearfix"></div>

我假设这是可以做到的。

4

2 回答 2

25

我有同样的问题。我的解决方案(似乎是官方的:):

{{ form_label (form.plainPassword.first) }}   
{{ form_widget (form.plainPassword.first) }}  

{{ form_label (form.plainPassword.second) }}   
{{ form_widget (form.plainPassword.second) }}

希望它可以帮助!

于 2013-03-12T16:04:30.530 回答
2

这篇博文展示了如何在 twig 中输出重复的字段。

http://blogsh.de/2011/10/19/how-to-use-the-repeated-field-type-in​​-symfony/

但简而言之,这对我有用:

{{ form_label (form.plainPassword.children['New Password']) }}   
{{ form_widget (form.plainPassword.children['New Password']) }}  

{{ form_label (form.plainPassword.children['Confirm Password']) }}   
{{ form_widget (form.plainPassword.children['Confirm Password']) }}                    

我不得不说我确定使用 .children 不是最好的/官方的方式,但它确实有效!

于 2012-03-20T20:52:21.733 回答