2012-09-30 3 views
0

est assez simple:Symfony2: Ajouter forme à une autre forme

J'ai une entité Agence

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

et j'ai un AgencyType pour créer le formulaire:

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

Je aussi AddressType

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

Avec cette configuration si je mets:

{{ form_widget(form) }} 

dans le modèle de brindille j'afficher uniquement les « Sélectionnez » forme un widget, mais je veux voir tous les champs de la forme AgencyType AddressType.

Comment je peux faire ça?

+0

Quels sont * tous les champs? – hakre

+0

Je pense que vous recherchez "Embedded collections": http://symfony.com/doc/current/cookbook/form/form_collections.html – mblaettermann

+0

la relation entre les entités Agency et Address n'est pas une collection. – Mauro

Répondre

6

J'ai résolu le problème!

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

Propre et facile!

+0

Vérifiez la réponse comme la bonne alors s'il vous plaît. –

+0

Comment faire dans symfony3 Je suis confronté à un problème quelqu'un peut-il me dire comment ajouter un formulaire dans un autre formulaire en utilisant symfony3 #php # symfony3 – mobizen