CakePHP 3.7 - Доступ к переменной представления из контроллера - PullRequest
0 голосов
/ 11 января 2019

Внутри AppController->beforeRender() Я бы хотел проверить, установлена ​​ли уже переменная вида, и посмотреть ее значение.

Как вы можете получить доступ к переменным вида из контроллера в CakePHP 3.7?

Раньше это было возможно с $this->viewVars['variable_name'], но оно устарело.

Я пытался $this->viewBuilder()->getVars(), но это возвращает пустой массив, хотя, безусловно, есть переменные представления.

1 Ответ

0 голосов
/ 19 января 2019

Обобщение ответа из комментариев: это невозможно напрямую.
Доступ к переменным через viewBuilder() не будет работать, потому что он получает только viewvars во время построения представления.

Решением может быть пользовательский элемент, инкапсулирующий переменные для доступа.

Я закончил, установив некоторые переменные по умолчанию: в AppController->initialize() переменная представления status установлена ​​как "OK", другие контроллеры и методы могут просто переопределить ее.

...