0

我分配 $this->view->form = $form了(表单实例),现在尝试使用 echo $this->form; 但不显示任何内容来显示 layout.phtml 中的内容。我尝试使用检查内容 print_r($this); ,但没有看到任何数据加载到[log:Zend_View_Abstract:private]. 谁能帮助我了解如何在 phtml 文件中加载数据。

AuthForm.php

class forms_AuthForm extends Zend_Form
{
    public function __construct($options = null)
    {
        parent::__construct($options);
        $this->setName('login');

        $username = new Zend_Form_Element_Text('username','username');
        $username->setLabel('Username:')
                 ->setRequired(true)
                 ->setOptions(array('class'=>'longfield'));

        $password = new Zend_Form_Element_Text('password','password');
        $password->setLabel('Password: *')
                 ->setRequired(true);

        $submit = new Zend_Form_Element_Submit('submit','submit');
        $submit->setLabel('Login');

        $this->addElements(array($username, $password,$submit));
    }
}

和 AuthController.php

$form = new forms_AuthForm();
$this->view->form = $form;

问候基兰

4

1 回答 1

0

我不确定,但我认为您必须将表单分配给布局而不是视图。

$layout = Zend_Layout::getMvcInstance();
$form =  new forms_AuthForm();
$layout->form = $form;

在你的layout.phtml中

echo $this->layout()->form;
于 2011-03-04T13:44:51.807 回答