Сам хелпер
Copy Source | Copy HTML
class My_Action_Helper_AuthInfo extends Zend_Controller_Action_Helper_Abstract
- {
- public function init()
- {
- echo "Init helper";
- }
- }
Подключение пути к своим хелперам
old way (bootstrap)
new way (application.ini)Copy Source | Copy HTML
Zend_Controller_Action_HelperBroker::addPath( APPLICATION_PATH .'/controllers/helpers', 'My_Action_Helper' );
Copy Source | Copy HTML
resources.frontController.actionhelperpaths.My_Action_Helper = APPLICATION_PATH "/controllers/helpers"
Добавление хелпера в брокер
(чтобы хуки с циклом диспетчеризации сработали хелперы нужно инстанцировать и добавить в брокер помощников на этапе инита приложения)
old way (для варианта с бутстрапом достаточно добавить следом ещё одну строчку)
Copy Source | Copy HTML
Zend_Controller_Action_HelperBroker::getStaticHelper('AuthInfo');
new way (для варианта с добавлением хелперов через app.ini нужно добавить в бутсрап следующие строки)
Copy Source | Copy HTML
$this->bootstrap('frontcontroller');
- Zend_Controller_Action_HelperBroker::getStaticHelper('AuthInfo');
ПыСы: Очень хотелось бы избавиться от "$this->bootstrap('frontcontroller');", но пока не нашёл как. Обидно, что этот хук я нашёл методом научного тыка, а не из оф доки. Уже позже наткнулся на упоминание оного в блоге O'Phinney =(
Ссылки по теме:
http://zend-framework-community.634137.n4.nabble.com/question-about-resources-frontController-actionHelperPaths-in-application-ini-td3208490.html
http://zend-framework-community.634137.n4.nabble.com/Action-Helpers-Path-configuration-in-version-1-9-5-td788751.html
Комментариев нет:
Отправить комментарий