Zend_View_Helper_Url
的覆盖,名为App_View_Helper_Url
。APPPLICATION_PATH/library/App/View/Helper/Url.php
resources.view.helperPath.App_View_Helper = APPLICATION_PATH "/library/App/View/Helper"
这很有效。在我的视图中,现在正在调用自定义URL帮助程序。但是,在模板视图中,额外的命名空间似乎没有成功。我通过运行此代码段验证了这一点:<?php var_dump(get_class($this->getHelper('url'))); ?>
App_View_Helper_Url
Zend_View_Helper_Url
我已尝试通过将布局视图显式设置为正在引导的View资源来解决此问题 - 这不起作用。
$this->getResource('layout')->setView($this->getResource('view'));
最后,我通过在Bootstrap中修复以下内容来修复它:
$view = $layout->getView();
$view->addHelperPath(APPLICATION_PATH . '/library/App/View/Helper', 'App_View_Helper');
这个解决方案不是很令人满意,因为我现在两次定义相同的辅助路径,导致潜在的破坏线。因此,虽然我有一个解决方法,但我更喜欢理解如何/在哪里正确配置Zend_Layout使用的Zend_View实例,最好是通过application.ini。