当涉及到Zend Framework时,我是一个相对的noob,但是我有一个表单需要使用,如果有几个视图所以我认为我可能会使用Action Helper来实例化表单设置一些属性并将其传递给相关视图。我已经创建了Action Helper并且可以在相关控制器的动作中调用它,但是当我尝试将表单传递给action的视图时,没有任何东西被渲染,即:
$form = new Application_Form_Colour;
if($this->_request->isPost() && $form->isValid($this->_request->getPost()))
{
$model = new Application_Model_Colour();
$model->changeColour($form->getValues());
$form->reset();
}
else
{
$form->newColour->setAttrib('disabled', 'disabled');
}
$this->view->form = $form;
我做错了什么或者我对Action Helper的用途有错误的想法?也许它不是我需要使用的Action助手?
答案 0 :(得分:0)
原来我只是傻了!而不是
$this->view->form = $form;
在动作助手的最后我应该做的:
return $form;
然后在我的控制器中:
$this->view->form = $this->_helper->myActionHelper->myActionHelperMethod();
傻傻的我......