Задать вопрос
usdglander
@usdglander
Yipee-ki-yay

Как добавить свои свойства во View от Yii2?

Добрый день.
Для всего приложения хочу во View на ряду с View->title, добавить ещё View->subTitle.
Первое решение, которое пришло в голову - наследоваться от yii\web\View, добавить в наследника новое свойство и переопределить базовый класс View на свой через classMap. Но вычитал что такое решение является "грязным хаком".
В связи с этим вопрос: Как расширить базовый класс View своими свойствами кошерно? Или, возможно, я напрасно всё усложняю и есть какой то уже готовый способ?
Заранее спасибо всем ответившим.
  • Вопрос задан
  • 434 просмотра
Подписаться 2 Оценить Комментировать
Решения вопроса 2
@Quieteroks
php программист
Вы можете реализовать передачу параметров через View::params. Как это реализовано для тех же хлебных крошек. И не мучить себя попытками перенастроить и отнаследоваться от базового класса ради добавления полей.

$this->params['breadcrumbs'][] = $this->title;

Но и в наследовании нет какой-то "грязи". Это же ООП и наследование тут один из базовых принципов, как он может быть грязным приемом? Вопрос только в том, что бы в дальнейшем вы везде использовали свой View и не получили ошибок, если вдруг получите базовый.
Ответ написан
qonand
@qonand
Software Engineer
по моему Вы все усложняете, наследование в данном случае вполне уместно
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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