Cakephp: beforeRender не работает, когда выкидываете исключение из действия

Я использую ResponseHandler как ответ действия и я реализовал beforeRender функция в AppControllerТеперь я хочу другой формат ответа JSON для конкретного контроллера, поэтому я переопределить beforeRender в этом контроллере.

Это работает нормально для меня, но теперь, когда я выкидываю какое-то исключение, он выполняет AppController's beforeRender функционируют не те контроллеры перед Render.

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

когда не исключение брошено

 {
     status:true,
     msg:result,
     httpStatus:200,
     data:array()
 }

когда выброшено исключение

 {
    status:fasle,
    msg:$this->viewVars['error'],
    httpStatus:$this->viewVar['error']->getCode(),
    data:array()
 }

0 ответов

Другие вопросы по тегам