Возможность использования контроллера без создания представления (вида) в CakePHP

Добавлено: 06/02/2015 02:09 |  Обновлено: 19/08/2017 11:33 |  Добавил: nick |  Просмотры: 10381 Комментарии: 0
Вводная часть
Время от время возникает необходимость использовать логику контроллера без создания вида. Такое, например, может возникнуть когда нужен какой-то метод (экшен), не выводящий никаких данных, и создаваемый только для их обработки. В CakePHP это делается одной строкой кода.
Как вы знаете, после создания контроллера, в CakePHP, нужно создать вид, в противном случае фреймворк будет ругаться. Возникнет ошибка "Missing View".

Происходит это потому что после запроса каждого метода (экшена) автоматически вызывается метод render(). Который формирует конечный вид страницы сайта, передаваемый пользователю. Если метод нужный вид не находит, то и возникает соответствующая ошибка.

Чтобы ошибка не возникала, нужно подавить вызов метода render(). Делается это одной строчкой:
autoRender = false; 
После добавления этой строчки в метод (экшен) вашего контроллера, можно не заботиться о создании вида.

Оставьте свой комментарий

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