Zend Frameworkでカスタムフォームを使用する方法に問題があります。Zend Frameworkビュースクリプトを使用したカスタムフォーム
私は様々なガイドに従っていますが、動作するものはありません。何もレンダリングされません。
は、ここで私は(下のすべてのコードは、デフォルトのモジュールである)を使用しようとしているコードのビットです。私はテストのための単一の入力にコードを単純化しました。
アプリケーション/フォーム/ワン/ 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));
}
}
アプリケーション/ビュー/スクリプト/ 1/
<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>
アプリケーション/コントローラ/ 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;
}
formlayout.phtml
application/views/scripts/index/formtest.phtml
<h1>Formtest</h1>
<?
echo $this->form;
?>
上記のコードは、エラーをスローまたはpタグの間フォームタグやテキストを含むformlayout.phtmlの一部をレンダリングされません。
私が間違っていることを誰に教えてもらえますか?
一般的なエラーは、親のコンストラクタを呼び出すことはありません、あなたのフォームクラスでコンストラクタを持っています。これは最終的に 'init()'メソッドを呼び出す親コンストラクタであるため、フォーム出力が空になります。ちょうど大声を考えて... –