Я работаю с Zend совсем недавно. Я открыл для себя этот декоратор ViewScript для форм и считаю его лучшей альтернативой классическим декораторам форм Zend. Но у меня проблема с отображением формы. У меня работает код, но нет отображения, которое я получаю от представления.
Вот мои коды:
Форма:
class Application_Form_Registration extends Zend_Form
{
public function init()
{
$username = new Zend_Form_Element_Text("username");
$submit = new Zend_Form_Element_Submit("submit");
$this->setAction("/test.php");
$this->setMethod("get");
$this->addElements(array($username, $submit));
$this->setElementDecorators(array(
array('ViewScript', array(
'viewScript'=>'test.phtml'
))
));
}
}
Контроллер:
class IndexController extends Zend_Controller_Action
{
public function init()
{
}
public function indexAction()
{
$form = new Application_Form_Registration();
$this->view->form = $form;
}
}
test.phtml (Мой ViewScript)
<form action="<?php $this->escape($this->form->getAction()); ?>">
<div style="width: 100px; height: 100px; background: blue;">
<?php echo $this->element->username; ?>
<?php echo $this->element->submit; ?>
</div>
</form>
И мое мнение (index.phtml)
<?php echo $this->form; ?>
Я что-то пропустил и / или сделал неправильно с приведенным выше кодом?