использование компонента в плагине и вызов метода - PullRequest
0 голосов
/ 11 августа 2011

Я новичок в торт 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 Ответ

5 голосов
/ 11 августа 2011

ваша структура плагина кажется неправильной

/app/plugins/plugin_name/controllers/... etc

вы, вероятно, вообще не читали кулинарную книгу .в противном случае вы бы заметили это, а также то, что компоненты находятся в подкаталоге:

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

и обратите внимание, что вы всегда должны включать имя плагина:

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

, а m следует использовать с заглавной буквы: MyComp

...