CakePHP 2.0 - 如何制作自定义错误页面?
2022-08-30 14:22:33
我读到 AppError 类现在用于向后兼容,应该改用 Exceptions。如何为404错误或完全自定义错误创建自定义错误页面?
我读到 AppError 类现在用于向后兼容,应该改用 Exceptions。如何为404错误或完全自定义错误创建自定义错误页面?
试试这个:
/app/Config/core.php
异常呈现需要设置为 .例:AppExceptionRender
Configure::write('Exception', array(
'handler' => 'ErrorHandler::handleException',
'renderer' => 'AppExceptionRenderer',
'log' => true
));
/app/Controller/ErrorsController.php
class ErrorsController extends AppController {
public $name = 'Errors';
public function beforeFilter() {
parent::beforeFilter();
$this->Auth->allow('error404');
}
public function error404() {
//$this->layout = 'default';
}
}
/app/Lib/Error/AppExceptionRenderer.php
App::uses('ExceptionRenderer', 'Error');
class AppExceptionRenderer extends ExceptionRenderer {
public function notFound($error) {
$this->controller->redirect(array('controller' => 'errors', 'action' => 'error404'));
}
}
/app/View/Errors/error404.ctp
<div class="inner404">
<h2>404 Error - Page Not Found</h2>
</div>
将其插入到您需要的位置:throw new NotFoundException();
要自定义 404 错误页面的内容并且不需要自定义逻辑,只需编辑 的内容即可。app/View/Errors/error400.ctp
这似乎在任何地方都没有正确记录。