如何将Zend_Form添加到我的布局中?布局没有“控制器”来启动表单。我该怎么做呢?Zend Framework:布局中的Zend_Form
0
A
回答
1
针对菲尔·布朗的评论:
class My_View_Helper_AddMyForm extend Zend_View_Helper_Abstract()
{
public function addMyForm() {
return new My_Form_MyForm();
}
}
现在,在您的布局:
echo $this->addMyForm();
我没有测试它,但它应该工作假设你已经注册的我/查看/助手帮手路径。代码较少,只有在需要时才可以调用。
1
您可以使用操作助手将表单添加到布局。
所以,你的动作助手应该是这样的:
class Application_Controller_Helper_AddMyForm extends Zend_Controller_Action_Helper_Abstract
{
public function preDispatch()
{
$view = $this->getActionController()->view;
$form = new Application_Form_MyForm();
$view->myForm = $form;
}
}
而这个帮手,应在引导注册:
class Bootstrap extends Zend_Application_Bootstrap_Bootstrap
{
protected function _initMyActionHelpers()
{
$this->bootstrap('frontController');
$addMyForm = Zend_Controller_Action_HelperBroker::getStaticHelper('AddMyForm');
Zend_Controller_Action_HelperBroker::addHelper($addMyForm);
}
}
现在你应该能够从布局访问myForm
:
echo $this->myForm;
请参阅Weier O'Phinney's blog和中有关使用动作助手实施可重复使用小部件的更多信息
+1
我会更倾向于使用视图助手而不是动作助手,但这个过程会非常相似。 – Phil 2010-11-15 22:40:36
+0
你会在哪里放置一个动作助手?与视图助手相同的文件夹? – 2012-10-25 03:20:44
相关问题
- 1. Zend Framework:布局
- 2. 带布局的Zend Framework Bootstrap?
- 3. Zend Framework 2骨架布局
- 4. Zend Framework 1.11布局类等
- 5. Zend Framework:布局中的多个模块
- 6. 的Zend Zend_Form的布点
- 7. 在Zend Framework中渲染布局零件
- 8. 在Zend Framework 3中禁用布局?
- 9. Zend Framework - 从视图中获取布局
- 10. Zend Framework布局的文件扩展
- 11. Zend Framework 2:使用MvcEvent设置布局
- 12. Zend Framework:如何附加默认布局
- 13. Zend Framework 2 - 布局和变量
- 14. Zend_Form和装饰器布局
- 15. Zend Framework中控制器和布局中的数据流
- 16. 更改Zend Framework 2.0控制器中的布局
- 17. 如何在Zend Framework中使用电子邮件的布局
- 18. Zend Framework中公用文件夹的自定义布局2
- 19. 将值传递给Zend Framework中的布局.....?
- 20. 将Zend Framework中布局所需的代码放在哪里?
- 21. Zend Framework中的布局预渲染修改2
- 22. 如何根据Zend Framework中的数据库值设置布局
- 23. Zend Framework全局文件
- 24. Zend_Form基于表格的布局
- 25. Zend的布局headLink()
- 26. Zend的布局ZF2
- 27. 我可以在Zend Framework中有多个布局吗?
- 28. 在Zend Framework中更改原始布局路径
- 29. 如何在Zend Framework中缓存布局内容
- 30. Zend Framework 2两个模板在一个布局中?
我已经意识到你为什么要使用控制器动作助手或视图助手。如果您希望能够在任何*页上提交和处理表单,请使用控制器操作助手。如果表单提交给特定操作,请使用视图帮助器。 – Phil 2010-11-16 01:48:11