mikaspell
@mikaspell
Frontender

Как предать переменную из view в layout в twig?

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

использую yii2-twig, в конфиге приложения прописал $layout
  • Вопрос задан
  • 306 просмотров
Пригласить эксперта
Ответы на вопрос 1
Это немного противоречит той концепции Yii2, которую она дает. в представляение уходит уже готовый, полностью собранные из фильтров и виджетов вид. Большая часть кода уже инкапсулирована и ушла ОТ сервера, а для передачи используются либо формы, либо контроллер с запросом на какое-то действие. Для смены классов, лучше придумать что-то из контроллера, а вид должен заниматься только показом содержимого.

Но! думаю можно попробовать так, когда-то работало в Yii 1.x
в виде
/* 
 *Доп. параметр, причем он в layout-е 
 *будет доступен только в секции body, 
 *в секции head нет!
 */
$this->params['myparam'] = $myparam;


В layout
<?php $this->beginBody() ?>
    
<!-- Причем это доступно только в секции body -->
<?= $this->params['myparam']?>

<?= $content ?>

<?php $this->endBody() ?>
Ответ написан
Ваш ответ на вопрос

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

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