Bootstrap модуля backend/frontend

Общие вопросы по использованию второй версии фреймворка. Если не знаете как что-то сделать и это про Yii 2, вам сюда.
Ответить
Аватара пользователя
Faenir
Сообщения: 292
Зарегистрирован: 2010.01.06, 01:46
Откуда: Симферополь

Bootstrap модуля backend/frontend

Сообщение Faenir » 2017.09.05, 22:57

Подскажите пожалуйста, как будет правильнее реализовать (подключить) Bootstrap для модуля, который пишется под "advanced" структуру. Т.е. мне нужен один общий бутстрап + отдельные под фронтенд и бэкенд (с консолью instanceof помог).

Через композер, на сколько я понял, только один Bootstrap подключается. Не совсем понимаю, как в нем узнать бэкенд или фронтенд сейчас отрабатывает:

Код: Выделить всё

extra": {
    "bootstrap": "vendor\\module\\Bootstrap"
  }
Второй вариант, который пришел в голову: создать Bootstrap, BootstrapFrontend extends Bootstrap, BootstrapBackend extends Bootstrap и BootstrapConsole extends Bootstrap (обычным наследованием) и затем добавить каждый в 'bootsrap' конфигов соответствующего приложения.

Третий вариант, оставить bootstrap в композере и добавить в конфиги приложений какой-то параметр, который и отлавливать потом в классе бутстрапа, например:

Код: Выделить всё

'params' => [
    'app' => 'backend'
]
Какой способ лучше использовать? Или может есть получше решения?

Nex-Otaku
Сообщения: 825
Зарегистрирован: 2016.07.09, 21:07

Re: Bootstrap модуля backend/frontend

Сообщение Nex-Otaku » 2017.09.06, 18:00

только один Bootstrap подключается. Не совсем понимаю, как в нем узнать бэкенд или фронтенд сейчас отрабатывает:

Код: Выделить всё

if (Yii::$app->id === 'app-frontend')

Аватара пользователя
Faenir
Сообщения: 292
Зарегистрирован: 2010.01.06, 01:46
Откуда: Симферополь

Re: Bootstrap модуля backend/frontend

Сообщение Faenir » 2017.09.06, 20:15

Nex-Otaku писал(а):
2017.09.06, 18:00
только один Bootstrap подключается. Не совсем понимаю, как в нем узнать бэкенд или фронтенд сейчас отрабатывает:

Код: Выделить всё

if (Yii::$app->id === 'app-frontend')
Думал о таком варианте. Но что, если модуль пишется не под один проект и "Yii::$app->id" может быть другим и заранее неизвестен?

Ответить