【问题标题】:How to load plugin files in cakephp 2.0如何在 cakephp 2.0 中加载插件文件
【发布时间】:2012-12-29 10:27:05
【问题描述】:

我正在为我的应用程序使用linkedin 插件。对于 cakephp 1.3,它工作正常。我迁移到 cakephp 2.x。我知道您需要加载这样的插件

CakePlugin::load('Linkedin');

成功了。但是在我的插件文件夹中,我有供应商文件夹。它是使用

加载的
App::import('Vendor', 'Linkedin.oauth', array('file' => 'OAuth' . DS . 'oauth_consumer.php'));

但它说找不到 oauth_consumer。

感谢您的帮助。

*更新 * 我已将linkedin plugin 添加到我的应用程序中。我已经使用 CakePlugin::load('Linkedin'); 加载了我的插件。现在我得到错误

Fatal error: Call to a member function get() on a non-object in ....\Controller\Component\LinkedinComponent.php on line 95

Linkedin 组件的第 95 行是这样的

    $consumer = $this->_createConsumer();
    $result = $this->Consumer->get($key, $secret, $this->apiPath . $path);

它说在linkedincomponent 上找不到get 方法。但是get方法在oauth_consumer.php中。

感谢您的帮助

【问题讨论】:

  • App::import 语句不应更改。所以你的代码应该仍然可以工作。缓存被清除了吧?
  • 我清除了还是同样的问题
  • “它说找不到 oauth_consumer”相当模糊.. 你至少应该在这里向我们提供更详细的错误消息。最好包括 strack 跟踪以及您与此错误一起获得的任何信息。
  • 嗨,马克,感谢您的帮助。我已经更新了这个问题。该插件可在此处获得github.com/inlet/CakePHP-LinkedIn
  • 你确定这个插件适用于 CakePHP 2.x 吗?

标签: php cakephp cakephp-2.0


【解决方案1】:

插件未准备好 2.x。 你必须自己升级它。

查看文件夹和文件,您很容易就知道这一点。 在 2.x 中会是

/Linkedin/Controller/Component/LinkedinComponent.php

等(还要注意在 2.x 中很重要的大小写)

您很可能可以使用上述升级 shell 来做到这一点并使插件与 2.x 兼容。

【讨论】:

  • 升级后一定要回馈给作者!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-08-23
  • 1970-01-01
  • 2018-02-11
  • 1970-01-01
  • 1970-01-01
  • 2012-05-08
  • 1970-01-01
相关资源
最近更新 更多