Переменная по умолчанию, которая передается представлениям

#php #templates #variables #cakephp

#php #шаблоны #переменные #cakephp

Вопрос:

Очень простой вопрос CakePHP.

Я знаю, что вы можете передавать данные с $this->set() помощью контроллера in, и я знаю, что данные существуют внутри $this->request->data .

Передает ли CakePHP request->data в именованную переменную, которая может быть вызвана в представлении автоматически? Или я всегда должен делать $this->set('variable', 'data') ?

Комментарии:

1. Что происходит, когда вы выполняете a echo '<pre>'; print_r($this); echo '</pre>'; , чтобы увидеть, что вы получаете от процесса? Это ваш ответ.

Ответ №1:

Данные запроса доступны автоматически в представлении без необходимости устанавливать их в качестве переменной:

 $this->request->data(...
 

Пример (доступ к данным POST):

 $this->request->data['MyModel']['title'];
 

Вы можете просто debug($this->request->data()); в своем представлении посмотреть, что вам доступно.

Комментарии:

1. Считается ли прямой доступ к данным запроса хорошей практикой?

2. Я не понимаю, почему этого не было бы. Кто-нибудь, не стесняйтесь поправлять меня, если я ошибаюсь. Кажется лучшей практикой, чем добавление переменных ни по какой другой причине, кроме добавления переменных.