2016-10-25 3 views
0

У меня есть пользовательский плагин под названием «MyApps». В MyApps у меня есть Lib/MyCustomHelper.php.Как я могу получить доступ к специальному помощнику плагина из класса модели в cakephp?

Я пытаюсь получить доступ к MyCustomHelper из функции модели. У меня нет проблем с доступом к контроллеру.

В контроллере, я хотел бы сделать это:

App::uses('MyCustomHelper', 'MyApps.Lib'); 

И тогда я мог бы использовать его как это:

$myhelper = new MyCustomHelper(); 

Может кто-нибудь сказать мне, как я могу сделать то же самое, но в модельный класс?

ответ

1

Я мог бы скопировать весь текст из моего ответа на этот вопрос How to load a component in console/shell и просто заменить компонент помощником. Ответ будет таким же, поэтому, пожалуйста, прочитайте его.

Если вы хотите - и ваш текст звучит так, как вы уже сделали - используйте помощники внутри контроллера, у вас есть фундаментальное непонимание того, как работает MVC. Они не используются внутри модели или контроллера. Они должны работать только внутри слоя представления.

Если вы не можете заставить свой текущий код работать без неправильного использования помощника в неправильном контексте, ваша архитектура приложения уже нарушена дизайном, и вы на пути к созданию довольно грязной базы кода. Вы должны исправить свое понимание шаблона проектирования MVC, а затем реорганизовать код.

Смежные вопросы