2013-02-28 5 views
0

Comment attribuer un nom à un sous-formulaire afin qu'il envoie ses données dans la clé de publication correspondante? Dans l'exemple suivant, le nom du formulaire principal est "form" et le nom des deux sous-formulaires est également "form", ce qui entraîne l'affichage d'un seul sous-formulaire. les données post ressemble à ceci:Noms de sous-formulaires Symfony2

form[form][amount]= 
form[form][value]= 

Dans cet exemple de code $mainForm, $subForm1 et $subForm2 sont des instances de FormBuilder.

$subForm1->add('amount', 'text'); 
$subForm1->add('value', 'text'); 
$mainForm->add($subForm1); 

$subForm2->add('amount', 'text'); 
$subForm2->add('value', 'text'); 
$mainForm->add($subForm2); 

Alors Comment puis-je le changer envoyer les données de poste comme suit?

form[subForm1][amount]= 
form[subForm1][value]= 
form[subForm2][amount]= 
form[subForm2][value]= 

Répondre

0

Comment créez-vous votre FormBuilders? Si vous utilisez FormFactory, vous pouvez utiliser les méthodes createNamed() ou createNamedBuilder() pour définir un nom.

Vous pouvez également appeler $mainForm->create($name) pour créer un formulaire nommé (notez que tout ce qui ne fait qu'appeler $mainForm « usine s et ne pas ajouter automatiquement à $mainForm.

+0

grâce' $ mainForm-> créer (» name » , 'forme') 'fonctionne bien –