我注意到,对于某些例外情况,cake会呈现View / Errors / error400(或500).ctp,而对于其他例外,它会丢弃默认布局并呈现View / Layouts / error.ctp
我想知道错误布局呈现的所有情况以及原因。
到目前为止,我发现了这个:
缺少控制器|查看/错误/错误
缺少视图|查看/错误/错误
缺少表|查看/设计/错误
致命错误|空白页
从它的外观我会说,所有error500都将获得布局。但这意味着View/Errors/error500.ctp
永远不会被渲染,这看起来不合逻辑。
答案 0 :(得分:0)
您可以针对所有错误执行此操作。这会将布局设置为error
。
在AppController.php
function beforeRender() {
if ($this->name == 'CakeError') {
$this->layout = "error";
}
}