簡體   English   中英

Symfony2:將表單添加到另一個表單

[英]Symfony2: Add form in to another form

很簡單:

我有一個實體代理商

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

我有一個用於創建表格的AgencyType:

   $builder
        ->add('name')
        ->add('address');

我也有AddressType

   $builder
        ->add('street')
        ->add('zipCode')
        ->add('city')
        ->add('country');

使用此配置,如果我輸入:

{{ form_widget(form) }} 

在樹枝模板中,我僅查看“選擇”表單小部件,但我想查看來自AgencyType AddressType表單的所有字段。

我該怎么做?

我已經解決了問題!

$builder
    ->add('name')
    ->add('agents')
    ->add('address', new AddressType());

干凈又容易!

在symfony 3/4中,您應該以AdressType形式添加實體的數據類(Entity)。 例如:

public function configureOptions(OptionsResolver $resolver)
{
    $resolver->setDefaults([
        'data_class' => Address::class,
    ]);
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM