我想在predpatch()方法的zend框架中修改来自action helper的视图。 所以我做了如下的事情:
class MyHelper extends Zend_Controller_Action_Helper_Abstract { public function preDispatch() { $view = $this->getActionController()->view; $view->doSomething(); } }
可以吗?我要做的是-MyHelper需要根据用户区域设置调整到模板的一些路径(在本例中,视图是SmartyView),因此我希望读取操作帮助器中的用户区域设置,然后相应地调整视图。
我就在这里,还是应该换个方式?
谢谢!
你 能够 用ActionHelper来完成。但那时你必须明确地称之为。这个 preDispatch 回调方法不存在于 Action Helper . 如果要使用调度回调,则需要 Zend Controller Plugin .
preDispatch
另一种方法是初始化 Zend_Locale 在启动程序中,在初始化之前 Zend_View . 然后可以在初始化时获取区域设置 赞德观点 在引导过程中直接调整路径,而不是在分派周期中。参见上的示例 Zend_Application 为了一个想法。
Zend_Locale
Zend_View
赞德观点
Zend_Application