kodicms/module-loader
| Install | |
|---|---|
composer require kodicms/module-loader |
|
| Latest Version: | 3.2.1 |
| PHP: | >=5.5.9 |
| License: | GNU GENERAL PUBLIC LICENSE |
| Last Updated: | Jun 12, 2016 |
| Links: | GitHub · Packagist |
Laravel module loader
Пакет помогает организовать модульную структуру для фреймворка Laravel.
https://packagist.org/packages/kodicms/module-loader
Установка
Для установки пакета вы можете выполнить консольную комманду
composer require "kodicms/module-loader:3.*"
Или добавить пакет в composer.json
Добавить в загрузку сервис провайдер
В composer.json добавить пространство имен
Конфиг файл app.php
По умолчанию модули системы хранятся в папке modules, если вам необходимо загрузить модуль из другой директории,
то вы должны указать через конфиг файл путь до модуля и его пространство имен:
По умолчанию загрузчик при подключении модуля использует KodiCMS\ModulesLoader\ModuleContainer, вы можете
переопределить файл контейнера создав его по пути app\DefaultModuleContainer.php или если вы захотите
изменить поведение конкретного модуля, то необходимо создать файл ModuleContainer.php в корне директории модуля
и наследовать его от KodiCMS\ModulesLoader\ModuleContainer.
Структура модуля
Assets- ассеты, которые будут скопированы вpublic/cms/modules/{module}config- конфиги модуля. Если в модулях есть конфиг файлы с одинаковым названием, то их содержимое мерджитсяConsoleCommands- расположение файлов консольных компанды
databasemigrations- файлы миграции, будут запущены по командеmodules:migrateseedsDatabaseSeeder.php- если существует, то будет запущен по командеmodules:seed
HttpControllers- контроллеры модуляroutes.php- роуты текущего модуля, оборачиваются в неймспейсModules\{module}
ProvidersModuleServiceProvider.php- Сервис провайдер модуля, если файл существует, будет запущен в момент инициализации приложения
resourceslang- Файлы переводов для модуля, доступны по ключу названия модуля приведенного в нижний регистрtrans('{module}::file.key')views- Шаблоны модуля, доступны по ключу названия модуля приведенного в нижний регистрview('{module}::template')
ModuleContainer.php- Если данный файл существует, то он будет подключен как системный файл модуля, в котором указаны относительыне пути и действия в момент инициализации. Необходимо наследовать отKodiCMS\ModulesLoader\ModuleContainer
Консольные команды
php artisan modules:list- просмотр списка подключенных модулейphp artisan modules:migrate- выполнение миграций из модулей (Доступны параметры аналогичные для стандартной командыmigrate)php artisan modules:seed- сидирование данных из модулейphp artisan modules:assets:publish- публикация assets файлов из папки Assets вpublic/modules/{module}
Related Packages
Powerful PHP database abstraction layer (DBAL) with many features for database s...
Laravel Serializable Closure provides an easy and secure way to serialize closur...
Cli error handling for console/command-line PHP applications.