错误布局与cakephp 2中的error500.ctp

时间:2016-06-07 08:29:46

标签: cakephp cakephp-2.6

我注意到,对于某些例外情况,cake会呈现View / Errors / error400(或500).ctp,而对于其他例外,它会丢弃默认布局并呈现View / Layouts / error.ctp

我想知道错误布局呈现的所有情况以及原因。

到目前为止,我发现了这个:

缺少控制器|查看/错误/错误
缺少视图|查看/错误/错误
缺少表|查看/设计/错误
致命错误|空白页

从它的外观我会说,所有error500都将获得布局。但这意味着View/Errors/error500.ctp永远不会被渲染,这看起来不合逻辑。

1 个答案:

答案 0 :(得分:0)

您可以针对所有错误执行此操作。这会将布局设置为error。 在AppController.php

function beforeRender() { 
    if ($this->name == 'CakeError') { 
       $this->layout = "error"; 
    }
}