Как из файла layout/main.php узнать имя работающего модуля?

Общие вопросы по использованию второй версии фреймворка. Если не знаете как что-то сделать и это про Yii 2, вам сюда.
Ответить
SamGold
Сообщения: 7
Зарегистрирован: 2016.11.17, 21:00

Как из файла layout/main.php узнать имя работающего модуля?

Сообщение SamGold »

Добрый день!
Нужно в файле @app/views/layouts/main.php указать фоновую картинку для <body>, в зависимости от того, какой модуль показывает свои вьюхи. Подскажите, как узнать название модуля?
SamGold
Сообщения: 7
Зарегистрирован: 2016.11.17, 21:00

Re: Как из файла layout/main.php узнать имя работающего модуля?

Сообщение SamGold »

Наверно, я не точно вопрос задал. У меня есть модули админ и личный кабинет и отдельно модуль статических страниц. В админской части и кабинете есть свои модули. Yii::$app->controller->module->id показывает непосредственно модуль, чей контроллер работает, а мне нужно получить именно верхний модуль, соответственно, admin, cabinet или page
rak
Сообщения: 2181
Зарегистрирован: 2010.11.02, 23:40
Контактная информация:

Re: Как из файла layout/main.php узнать имя работающего модуля?

Сообщение rak »

может так?

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

$isAdminModule = Yii::$app->getModule('admin')->hasModule(Yii::$app->controller->module->id)
или так

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

Yii::$app->controller->module->module->id
ну это упрощенно, без проверок
SamGold
Сообщения: 7
Зарегистрирован: 2016.11.17, 21:00

Re: Как из файла layout/main.php узнать имя работающего модуля?

Сообщение SamGold »

rak писал(а):может так?

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

$isAdminModule = Yii::$app->getModule('admin')->hasModule(Yii::$app->controller->module->id)
 
или так

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

Yii::$app->controller->module->module->id
ну это упрощенно, без проверок
Спасибо . Это можно использовать. С учетом того, что у модуля admin есть и свои контроллеры, надо два запроса делать, на сам admin и на принадлежность модуля к модулю admin
Ответить