Sto riscontrando qualche problema nell'usare come utilizzare i moduli personalizzati in Zend Framework.Forme personalizzate di Zend Framework con viewScript
Ho seguito varie guide ma nessuna sembra funzionare. Niente viene reso.
Ecco i bit di codice che sto cercando di utilizzare (Tutto il codice che segue è nel modulo di default). Ho semplificato il codice per un singolo input per il test.
applicazioni/forme/One/Nametest.php
class Application_Form_One_Nametest extends Zend_Form {
public function init() {
$this->setMethod('post');
$name = new Zend_Form_Element_Text('name');
$name->setLabel('Box Name')
->setRequired(true)
->addFilter('StripTags')
->addFilter('StringTrim')
->addValidator('NotEmpty');
$submit = new Zend_Form_Element_Submit('submit');
$submit->setLabel('Submit Message');
$submit->setAttrib('id', 'submitbutton');
$submit->setAttrib('class', 'bluebutton');
$this->addElements(array($name, $submit));
}
}
application/views/scripts/un/formlayout.phtml
<form action="<?= $this->escape($this->form->getAction()) ?>" method="<?= $this->escape($this->form->getMethod()) ?>">
<p>
Please provide us the following information so we can know more about
you.
</p>
<? echo $this->element->name ?>
<? echo $this->element->submit ?>
</form>
application/controller/IndexController.php
public function formtestAction() {
$form = new Application_Form_One_Nametest();
$form->setDecorators(array(array('ViewScript', array('viewScript' => 'one/formlayout.phtml'))));
$this->view->form = $form;
}
application/views/scripts/index/formtest.phtml
0.123.Il codice sopra riportato non genera errori o non restituisce alcuna parte di formlayout.phtml, compresi i tag del modulo o il testo tra i tag p.
Qualcuno può dirmi cosa potrei fare di sbagliato?
Un errore comune sta avendo un costruttore nella classe forma che non chiamare il costruttore genitore. Ciò si traduce in output di moduli vuoti poiché è il costruttore genitore che alla fine chiama il metodo 'init()'. Sto solo pensando ad alta voce ... –