具有子表单的Symfony表单

Ale*_*anz 3 php symfony-forms symfony symfony-2.6

我在用户表单中有一个用户表单和联系表单,我试图将我的联系表单添加到用户表单中

当我试图添加

$builder->add(
            'contact',
            new ContactType()
        );
Run Code Online (Sandbox Code Playgroud)

它失败了

You cannot add children to a simple form.
Maybe you should set the option "compound" to true?
Run Code Online (Sandbox Code Playgroud)

试图设置化合物,但没有工作

/**
 * {@inheritdoc}
 */
public function configureOptions(OptionsResolver $resolver)
{
    $defaults = array(
        'compound' => true,
        'inherit_data' => true,
    );

    $resolver->setDefaults($defaults);
}
Run Code Online (Sandbox Code Playgroud)

Jov*_*vic 8

compound选项默认设置为true.

  1. 你是如何扩展表单类的?AbstractFormType, 或者是其他东西?
  2. 你重写getParent()方法了吗?

这可以解释compound为什么设置false.

  • +1提及有关扩展的问题.它应该是`AbstractType`,而我意外地扩展了错误的类,我从原始问题得到了错误. (2认同)