Как правильно «бутстрапить» в Zend Framework 1 при модульной структуре? Всем привет!
Строю приложение на Zend Framework 1. Структура папок следующая:
application ...modules default controllersviewsBootstrap.php module_1 controllersviewsBootstrap.php
Хочу юзать для каждого модуля свой отдельный класс Bootstrap. Но при такой структуре zf создает экземпляры классов Bootstrap каждого из моих модулей. К примеру я открываю страницу которая роутится на модуль default, но при этом создаются экземпляры классов Bootstrap из модуля defaul и из модуля module_1.
Помогите разобраться в вопросе.Спасибо!

21 Авг 2019 в 07:08
215 +1
0
Ответы
1

Чтобы правильно "бутстрапить" модули в Zend Framework 1 при модульной структуре, вам необходимо определить отдельные Bootstrap классы для каждого модуля и настроить загрузчик ресурсов так, чтобы он загружал Bootstrap только для активного модуля.

Пример настройки загрузчика ресурсов для модуля default:

class Default_Bootstrap extends Zend_Application_Module_Bootstrap
{
protected function _initAutoload()
{
$autoloader = new Zend_Application_Module_Autoloader(array(
'namespace' => 'Default_',
'basePath' => dirname(__FILE__),
));
return $autoloader;
}
}

Пример настройки загрузчика ресурсов для модуля module_1:

class Module_1_Bootstrap extends Zend_Application_Module_Bootstrap
{
protected function _initAutoload()
{
$autoloader = new Zend_Application_Module_Autoloader(array(
'namespace' => 'Module_1_',
'basePath' => dirname(__FILE__),
));
return $autoloader;
}
}

Затем в файле application.ini укажите путь к Bootstrap классу для каждого модуля:

resources.frontController.moduleDirectory = APPLICATION_PATH "/modules"
resources.frontController.defaultModule = "default"
resources.modules[] = "module_1"

Таким образом, Zend Framework будет загружать только активный Bootstrap класс для каждого модуля при обращении к нему. Надеюсь, это поможет вам разобраться с вашей проблемой. Если у вас возникнут дополнительные вопросы, не стесняйтесь задать их.

20 Апр 2024 в 13:06
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Гарантированные бесплатные доработки в течение 1 года
Быстрое выполнение от 2 часов
Проверка работы на плагиат
Поможем написать учебную работу
Прямой эфир