Hola a todos,
Estoy empezando con ZF y la verdad es que me estoy haciendo un pequeño lio con los formularios, controladores, etc.
Me preguntaba si se podia declarar multiples forms a la hora de declarar varios Zend_Forms y ponerlos en el mismo archivo, algo asi:
/forms/Admin.php
Código PHP:
<?php
class Application_Form_Admin extends Zend_Form{
public function init(){
$this->addElement('text', 'login', array(
'label' => 'Login',
'required' => true
));
$this->addElement('password', 'password', array(
'label' => 'Password',
'required' => true
));
$this->addElement('submit', 'Entrar', array());
}
public function agregaPais(){
$this->addElement('text', 'nombre_pais', array(
'label' => 'Nombre del pais',
'required' => true
));
$this->addElement('submit', 'Guardar', array());
}
}
?>
/controllers/AdminController.php
Código PHP:
<?php
class AdminController extends Zend_Controller_Action{
public function indexAction(){
$form = new Application_Form_Admin();
$this->view->form = $form;
}
public function agregaAction(){
$form = new Application_Form_Admin();
$this->view->agrega = $form->agregaPais();
}
}
?>
He probado a hacerlo pero cuando se ejecuta el indexAction() no hay problema, me muestra el formulario de login, pero si hago
$this->view->agrega = $form->agregaPais() me devuelve un valor nulo. Hay posibilidad de hacerlo o tengo que declarar los forms creando cada vez una nueva instancia de Zend_Form y agregando los elementos dentro del Controller manualmente?