iproger
@iproger
Безответственный гений

Как в yii получать информацию о странице?

В приложении планируются статические (наличие контроллера) и динамические страницы (PageController).

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

Идея: в методе __construct класса Controller добавить автоматический поиск страницы по текущему урл (sitename-ru/page_name), данные добавляются в $this->pageData.

1. Как из url получить нужное page_name без роутов?
2. Возможно, стоит реализовать по-другому?
  • Вопрос задан
  • 2725 просмотров
Пригласить эксперта
Ответы на вопрос 3
Fesor
@Fesor
Full-stack developer (Symfony, Angular)
2. Возможно, стоит реализовать по-другому?

Да, именно так. Но по имеющейся информации сложно сказать. Как минимум что-то подобное делать в конструкторе и не использовать раутинг не разумно.
Ответ написан
@x88
$this->id (получить название контроллера)
или
Yii::app()->controller->id
Yii::app()->controller->action->id (для названия экшна)
Ответ написан
Комментировать
@seydametbilyalov
Использовать конструктор контроллера не совсем хорошая идея:
public function __construct($id,$module=null) - переопределять родительский контроллер не получится просто.

Воспользуйтесь методом init() в котором вы уже можете сделать все что хотели.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы