我有一个控制器,下面有这个动作:
public function addAction()
{
//action for the comments submission
$form = new Application_Form_Comment();
$form->submit->setLabel('Comment');
$this->view->form = $form;
if ($this->getRequest()->isPost()) {
$formData = $this->getRequest()->getPost();
if ($form->isValid($formData)) {
$comment = new Application_Model_DbTable_Comments();
$comment->addComment($formData['comment'], $id);
$this->_helper->redirector('index');
} else {
$form->populate($formData);
}
}
在我看来,如果我回应$ this-> form; 表格没有显示。
里克多维
答案 0 :(得分:0)
假设您尝试将表单与任何特定控制器分开,您可以使用视图助手。 Writing your own is quite easy
创建文件application/views/helpers/CommentForm.php
,其中包含: -
class Zend_View_Helper_CommentForm extends Zend_View_Helper_Abstract
{
public function commentForm()
{
$form = new Application_Form_Comment();
return $form;
}
}
然后在你需要它的任何视图中: -
echo $this->commentForm();
这将呈现您的表单。