【发布时间】:2011-10-27 17:35:19
【问题描述】:
我正在尝试在我的 zend 项目中包含 jquery 帮助程序,来自 zend 的文档有点模棱两可,它表明在引导程序中使用几行代码,但有很多函数,如 _initDoctype / _initView / _initViewHelpers / _initAutoload 但它并没有说明我必须在哪里粘贴提供的代码。我贴在_initDoctype一个,够不够用???
到目前为止使用这行代码是可以的:
$view->addHelperPath('ZendX/JQuery/View/Helper/', 'ZendX_JQuery_View_Helper');
当为一个 js 文件或一个简单的 css 文件添加这一行时,应用程序崩溃了:
$view->jQuery()->setLocalPath($view->baseUrl . '/js/jquery-1.6.4.min.js');
$view->jQuery()->addStylesheet($view->baseUrl . '/css/smoothness/jquery-ui-1.8.16.custom.css');`
输出是带有以下错误消息的空白页:
致命错误: 未捕获的异常“Zend_Loader_PluginLoader_Exception” 在注册表中找不到消息“名称为“JQuery”的插件; 使用的路径: ZendX_JQuery_View_Helper_: ZendX/JQuery/View/Helper/ Zend_View_Helper_: Zend/View/Helper/'
所以,显然尝试添加更多代码,例如
$view->jQuery()->enable();
$view->jQuery()->uiEnable();
根本没用……
我真的需要这个所谓的“帮助程序”b/c 我不想加载另一个页面,但是这花了很多时间,而且我在网络上找到的每个解决方案都不适用于我的应用程序,这令人沮丧...这应该需要大约 5 或 10 分钟来实施,但我已经花了几个小时在这上面,但没有任何效果!
问题一:我是不是选错了框架……?
我开始认为旧的时尚方式更好(意味着完全没有框架的手动创建应用程序)并且稍后关注安全问题,一些关于此的 cmets 会很棒。
非常感谢任何帮助。
【问题讨论】:
-
不要放在initDoctype方法中,直接放在你的bootstrap文件中。
-
ZF 引导程序将自动运行以
_init开头的所有函数。因此,您可以通过简单地适当命名它们来创建自己的任意引导方法。 -
它不起作用,我需要类中的视图对象和函数...
-
第二条评论有道理,但 jQuery 助手仍然无法工作......
-
@Andrew 任何以
_init开头的函数都会引发相同的错误,仅使用public function init()不会返回任何错误,但添加$this->jQuery();时会再次引发相同的错误
标签: php jquery zend-framework controller view-helpers