从AppExceptionHandler渲染视图

时间:2011-12-27 11:56:25

标签: cakephp exception-handling error-handling cakephp-2.0

我正在使用CakePHP 2.0并希望处理ForbiddenException。 我遵循了CakePHP Cookbook中解释的example

我的异常现在被AppExceptionHandler捕获但我不知道如何从这里移动。我想渲染相关的视图,但$this不可用。 有没有人有我的起点?

修改
到目前为止,我的代码与Cookbook示例相同:

在app / Config / core.php

Configure::write('Exception.handler', 'AppExceptionHandler::handle');

在app / Config / bootstrap.php

App::uses('AppExceptionHandler', 'Lib');

在app / Lib / AppExecptionHandler.php

class AppExceptionHandler {
    public static function handle($error) {
        if($error instanceOf ForbiddenException ){
            echo 'Oh noes! ' . $error->getMessage();
            // $this->Session->setFlash('To access the page please login');     
        }
    }
}

的问候, 巴特

1 个答案:

答案 0 :(得分:-2)

正如您在评论中提到的,您可以将错误视图的副本复制到您自己的View文件夹并控制渲染。

如果您还想使用会话,请记住,在应用程序的任何部分,您也可以使用CakeSession来访问会话。

http://book.cakephp.org/2.0/en/development/sessions.html#reading-writing-session-data

相关问题