Symfony2:将表单添加到另一个表单中

Mau*_*uro 0 php many-to-one symfony

很简单:

我有一个实体机构

/**
 * @var \Rewards\LocationBundle\Entity\Address
 *
 * @ORM\ManyToOne(targetEntity="\Acme\xxBundle\Entity\Address", cascade={"persist"})
 * @ORM\JoinColumn(name="address_id", referencedColumnName="id")
 */
protected $address;
Run Code Online (Sandbox Code Playgroud)

我有一个创建表单的AgencyType:

   $builder
        ->add('name')
        ->add('address');
Run Code Online (Sandbox Code Playgroud)

我也有AddressType

   $builder
        ->add('street')
        ->add('zipCode')
        ->add('city')
        ->add('country');
Run Code Online (Sandbox Code Playgroud)

有了这个配置,如果我把:

{{ form_widget(form) }} 
Run Code Online (Sandbox Code Playgroud)

在twig模板中我只查看'Select'表单小部件,但我想查看AgencyType AddressType形式的所有字段.

我怎么能这样做?

Mau*_*uro 6

我已经解决了这个问题!

$builder
    ->add('name')
    ->add('agents')
    ->add('address', new AddressType());
Run Code Online (Sandbox Code Playgroud)

干净又方便!