使用插件中的组件和调用方法

时间:2011-08-11 00:06:28

标签: cakephp cakephp-1.3

我是新蛋糕php,我的应用程序中有一个插件文件夹

app/plugins
插件文件夹中的

我有模型和供应商文件夹。 (注意我没有任何视图或控制器文件夹)

app/plugins/model
app/plugins/vendors

我想在插件文件夹中添加一个组件,所以我将控制器文件夹添加到其中并将组件文件放在那里。

app/plugins/controllers
app/plugins/controllers/myComp.php

myComp.php中的方法是

class myCompComponent extends EmailComponent    {

    function hilpot() {

在我的vendors/shells/tasks文件夹中,我有一个名为my_test.php的文件

在文件中我已经包含了像

这样的组件
var $components = array('myComp');

在同一个文件中,我有一个假设调用myComp方法的方法

function _Maikle()
    {

            $this->myComp->hilpot() = array(

 ...................
..................

此时它失败并出现以下错误

PHP Fatal error:  Call to undefined method stdClass::hilpot() in C:\wamp\www\folder\app\plugins\vendors\shells\my_test.php on line 87

任何帮助将不胜感激 感谢

1 个答案:

答案 0 :(得分:5)

您的插件结构似乎不正确

/app/plugins/plugin_name/controllers/... etc
你可能根本没读过cookbook。否则你会注意到这一点以及组件在子目录中:

/app/plugins/plugin_name/controllers/components/...

另请注意,您应始终包含pluginname:

var $components = array('PluginName.MyComp');

和m应该大写:MyComp