0

(フォームインスタンス)を割り当て $this->view->form = $form、layout.phtmlのコンテンツを使用して表示しようとしまし echo $this->form; たが、何も表示していません。を使用して内容を確認しようとしましたが 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;

Regrds kiran

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 に答える