svisch
@svisch

Как сделать перенаправление на одну страницу с любой другой в зависимости от свойства модели?

Здравствуйте!
Стоит задача сделать перенаправление с любого маршрута приложения на определенную страницу, которая извещает пользователя о том, что сайт на тех обслуживании.
Реализую так:
1. Создал табличку (и соответствующую ей модель) с одной записью, в которой id состояния приложения. Допустим id=2 соответствует режиму тех.обслуживания.
2. Сделал веб интерфейс для админа где данный параметр можно менять.
После этого столкнулся с проблемой как отдавать всем пользователям кроме админа страничку, извещающую о том, что на сайте проводятся работы.

Хотелось бы из вышеупомянутой модели получать id состояния, проверять его и роль пользователя и при необходимых условиях перенаправлять на нужную страницу. Знаю про решение сделать класс унаследованный от Controller и в нем определить метод beforeAction, в котором будет вся логика, а остальные контроллеры наследовать от него, но уже слишком много создано контроллеров и хотелось бы сделать как то иначе!

Как вариант в конфиге есть свойство "catchAll", которое редиректит любой запрос на необходимый маршрут. Это полумера, т.к. хотелось бы это делать из веб интерфейса.

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

Буду признателен за подсказки в преодолении моей проблемы))
  • Вопрос задан
  • 24 просмотра
Решения вопроса 1
svisch
@svisch Автор вопроса
Нашел ответ на вопрос тут
Всем спасибо!
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы