ZendFramework 1.11.3:在注册表中找不到'名称插件'Jquery'

时间:2011-02-17 11:10:38

标签: php jquery zend-framework zendx

我有两台服务器。

  1. 雪豹在HFS(不区分大小写)文件系统上
  2. gentoo linux with ext4(区分大小写)文件系统
  3. 对他们两个我使用php 5.3和最新的apache2以及最新的Zend Framework 1.11版本。

    在Mac OSX下网站运行正常,在linux下我有以下错误:

    Fatal error: Uncaught exception 'Zend_Loader_PluginLoader_Exception' with message 'Plugin by name 'Jquery' was not found in the registry; used paths: Dashboard_View_Helper_: /home/ufk/Projects/php-projects/xpo-website/application/modules/dashboard/views/helpers/ xpo_Uploadify_View_Helper_: xpo/Uploadify/View/Helper/ ZendX_JQuery_View_Helper_: ZendX/JQuery/View/Helper/ : /home/ufk/Projects/php-projects/xpo-website/application/helpers/ Zend_View_Helper_: Zend/View/Helper/' in /usr/local/ZendFramework-1.11.3/library/Zend/Loader/PluginLoader.php:412 Stack trace: 
    0 /usr/local/ZendFramework-1.11.3/library/Zend/View/Abstract.php(1174): Zend_Loader_PluginLoader->load('Jquery') 
    1 /usr/local/ZendFramework-1.11.3/library/Zend/View/Abstract.php(610): Zend_View_Abstract->_getPlugin('helper', 'jquery') 
    2 /usr/local/ZendFramework-1.11.3/library/Zend/View/Abstract.php(336): Zend_View_Abstract->getHelper('jquery') 
    3 /home/ufk/Projects/php-projects/xpo-website/application/modules/dashboard/views/scripts/game/login.phtml(1): Zend_View_A in /usr/local/ZendFramework-1.11.3/library/Zend/Loader/PluginLoader.php on line 412
    

    我将ZendX目录(从extras / library)复制到位于/usr/local/ZendFramework/library/ZendX/的Zend Framework的库目录。

    我使用以下方法初始化帮助程序:

           ZendX_JQuery::enableView($view);
    

    导致异常的login.phtml中的代码是:

    $this->jquery()->enable();
    

    它甚至不应该与代码本身有关,因为在Mac OS服务器下它确实有效,但我在这里也有ZendX,所以我无法查明问题。

2 个答案:

答案 0 :(得分:1)

现在无法测试,但怀疑你需要在这行中用jQuery大写'q':

$this->jQuery()->enable();

通常ZF通过大写第一个字母来将方法映射到类名,因此可能是类名中的“异常”大写Q是问题。

答案 1 :(得分:1)

您必须添加辅助路径。 See manual。您可以在引导程序中使用Zend_Application,使用FrontController插件,在基本控制器类中或直接在视图中执行此操作。

更新:抱歉,我误解了你的问题。问题是小“q”。 Windows不区分大小写。这就是它在那里工作的原因。 Linux不是。所以'jQuery.php'和'jquery.php'不是同一个文件。