Vous pouvez utiliser des sous-formulaires. La seule différence entre Zend_Form
et Zend_Form_SubForm
sont les décorateurs:
$form1 = new Zend_Form();
// ... add elements to $form1
$form2 = new Zend_Form();
// ... add elements to $form2
/* Tricky part:
* Have a look at Zend_Form_SubForm and see what decorators it uses.
*/
$form1->setDecorators(array(/* the decorators you've seen */));
$form2->setDecorators(array(/* ... */));
$combinedForm = new Zend_Form();
$combinedForm->addSubForm('form_1', $form1);
$combinedForm->addSubForm('form_2', $form2);
Ensuite, dans le contrôleur que vous attribuez la forme à la vue:
$this->view->form = $combinedForm;
Et vous pouvez accès les deux sous-formulaires dans la vue par son nom:
// In the view
echo $this->form->form_1;
echo $this->form->form_2;
et à mon avis, comment aurais-je accès aux éléments de formulaire? $ this-> form -> ...? – Andrew
getSubForm ('subformName')? – takeshin