如何阻止表格 - 通过Symfony2呈现 - FosUserBundle - 嵌套? 建造者有两个场,其中有重复场。似乎这是goind被渲染为嵌套的
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder->add('current_password', 'password', array(
'label' => 'form.current_password',
'translation_domain' => 'FOSUserBundle',
'mapped' => false,
'constraints' => new UserPassword(),
));
$builder->add('new', 'repeated', array(
'type' => 'password',
'options' => array('translation_domain' => 'FOSUserBundle'),
'first_options' => array('label' => 'form.new_password'),
'second_options' => array('label' => 'form.new_password_confirmation'),
'invalid_message' => 'fos_user.password.mismatch',
));
}
我得到的,表单呈现时是这样的: http://pastebin.com/Np2bvgvH
如您所见,重复的表单字段包含在另一个“FormRows”-div中。我希望它们是简单的“FormRow”-divs,而不需要额外的FormRows。布局并不意味着有两个嵌套的FormRows
我希望你理解我的问题。
谢谢
答案 0 :(得分:0)
看看http://symfony.com/doc/2.0/reference/forms/types/repeated.html
Symfony考虑了这种类型的字段。
答案 1 :(得分:0)
解决方案是重新定义repeated_row块
{% block repeated_row %}
{% spaceless %}
{% for child in form %}
{{ form_row(child) }}
{% endfor %}
{% endspaceless %}
{% endblock repeated_row %}