当控制器不存在时,cakePHP 2.0路由

时间:2012-01-04 17:28:50

标签: routes cakephp-2.0 custom-routes

找不到控制器或插件时。我希望它最终在一个检查ulr(db)的特定控制器上,并检查我的cms中是否有与之相关的页面。 所以,在默认的cakephp路由后我不想丢失 控制器错误,但我想路由到控制器。 我想保留默认蛋糕路线的所有功能(插件,管理员路线)。 我怎么能做到这一点?

1 个答案:

答案 0 :(得分:1)

<强>被修改 我已经改变了答案,给出了更简洁的解释

创建自定义异常处理程序文件并覆盖error404函数。参考this documentation寻求帮助。

<?php
// in app/Config/core.php
Configure::write('Exception.handler', 'AppExceptionHandler::handle');

// in app/Config/bootstrap.php
App::uses('AppExceptionHandler', 'Lib');

// in app/Lib/AppExceptionHandler.php
class AppExceptionHandler extends ExceptionRenderer {
    public function error400($error) {
        $this->controller->redirect(
            //insert redirect code
            //it works like any controller redirect, so you should be familiar with the syntax
        )
    }
}
?>