Предложение: Модули

Предварительное обсуждение найденных ошибок перед отправкой их авторам фреймворка, а также внесение новых предложений.
Ответить
khaperets
Сообщения: 18
Зарегистрирован: 2014.03.12, 00:25

Предложение: Модули

Сообщение khaperets »

Здравствуйте!
Постараюсь максимально ясно высказаться, дабы была понята суть предложения.

В Yii есть возможность создавать модули (ничего нового не сказал).
Для того, чтобы сделать их более функциональными есть такое предложение: Нужно чтобы главные файлы всех модулей инициализировались.

Допустим есть модули:
  • Core (app/modules/core/Core)
  • Blog (app/modules/blog/Blog)
  • Backstage (app/modules/backstage/Backstage)
Если бы создавались объекты классов app/modules/core/Core, app/modules/blog/Blog, app/modules/backstage/Backstage, то в них можно было бы:
  • Переопределять/добавлять конфигурации для приложения
    То есть: в модуле есть директория config в которой хранятся роутинги для модуля, настройки зависимых компонентов и т.д. Их бы можно было добавить к настройкам из app/config.
  • Добавлять события
    К примеру: есть модули Git и Composer. При обращении к модулю Git (в котором есть событие git_pull) выполняется pull с origin master, в модуле Composer добавляется обработчик события git_pull, при котором выполняется composer update.
    Это одна из фантазий)
Аватара пользователя
maleks
Сообщения: 1985
Зарегистрирован: 2012.12.26, 12:56

Re: Предложение: Модули

Сообщение maleks »

У модулей, как и у всех компонентов есть метод init() , который можно переопределять, и который вызывается при "затребовании" модуля.
Yii2 universal module sceleton - for basic and advanced templates
Аватара пользователя
SiZE
Сообщения: 2813
Зарегистрирован: 2011.09.21, 12:39
Откуда: Perm
Контактная информация:

Re: Предложение: Модули

Сообщение SiZE »

khaperets писал(а):Нужно чтобы главные файлы всех модулей инициализировались.
А что с ними сейчас не так?
Аватара пользователя
samdark
Администратор
Сообщения: 9489
Зарегистрирован: 2009.04.02, 13:46
Откуда: Воронеж
Контактная информация:

Re: Предложение: Модули

Сообщение samdark »

Сейчас инициализируется только тот, который используется.
Аватара пользователя
slavcodev
Сообщения: 3134
Зарегистрирован: 2009.04.02, 21:42
Откуда: Valencia
Контактная информация:

Re: Предложение: Модули

Сообщение slavcodev »

Да модули Yii имеет смысл не похожий в других фреймворках или CMS.
То что в других фреймворках называется модулем, здесь это называется расширение.
А модули в Yii это отдельное маленькое приложение, и приложение может быть только одно.
У меня тоже были такие же трудности в понимании, пока не осознашеь эту разницу.

То что топикстартер пытается сделать, можно, создаешь компонент, добавляешь его в preload.
Жду Yii 3!
khaperets
Сообщения: 18
Зарегистрирован: 2014.03.12, 00:25

Re: Предложение: Модули

Сообщение khaperets »

maleks писал(а):У модулей, как и у всех компонентов есть метод init() , который можно переопределять, и который вызывается при "затребовании" модуля.
*А нужно, чтобы вызывались все объявленные, не в зависимости от "востребованности"
SiZE писал(а):А что с ними сейчас не так?
См. предыдущий ответ (*)
Sam Dark писал(а):Сейчас инициализируется только тот, который используется.
Именно)) Можно ли сделать (грамотно) как необходимо?
slavcodev писал(а):Да модули Yii имеет смысл не похожий в других фреймворках или CMS.
То что в других фреймворках называется модулем, здесь это называется расширение.
А модули в Yii это отдельное маленькое приложение, и приложение может быть только одно.
У меня тоже были такие же трудности в понимании, пока не осознашеь эту разницу.

То что топикстартер пытается сделать, можно, создаешь компонент, добавляешь его в preload.
Честно, я считаю, что в Yii модуль это и есть полноценный модуль, а не расширение.
yii2-gii, yii2-twig, yii2-smarty, yii2-swiftmailer - вот это я считаю расширениями (потому, что они расширяют/дополняют базовый функционал)
Аватара пользователя
slavcodev
Сообщения: 3134
Зарегистрирован: 2009.04.02, 21:42
Откуда: Valencia
Контактная информация:

Re: Предложение: Модули

Сообщение slavcodev »

khaperets писал(а):Честно, я считаю, что в Yii модуль это и есть полноценный модуль, а не расширение.
yii2-gii, yii2-twig, yii2-smarty, yii2-swiftmailer - вот это я считаю расширениями (потому, что они расширяют/дополняют базовый функционал)
А авторы фреймворка считают абсолютно наоборот. Разве важно каким словом называется?
Жду Yii 3!
lancedevnull
Сообщения: 1268
Зарегистрирован: 2013.07.17, 17:37

Re: Предложение: Модули

Сообщение lancedevnull »

модуль вроде тоже может в прелоад
Ответить