为什么CakePHP 3插件错误模板不显示

时间:2015-07-02 15:52:20

标签: templates cakephp cakephp-3.0

我最近升级到CakePHP 3.我想使用主题,所以我使用蛋糕烘焙插件PlgTest创建了一个插件。这已成功创建。我在AppController中设置了主题变量。该应用程序现在使用在插件的模板目录中创建的模板。到目前为止一切都很好。

但是,当在CSRFComponent中抛出类似ForbiddenException(403)的异常时,显示的模板是默认模板,而不是插件模板目录中的模板。

我希望显示插件的PlgTest / src / Template / Error / error400.ctp,而不是显示默认的/Template/Error/error400.ctp。为什么?对此有快速解决方案吗?

由于

1 个答案:

答案 0 :(得分:0)

如果有人需要

,找到一个好的解决方案here
<?php
namespace App\Controller;

use App\Controller\AppController;
use Cake\Event\Event;

class ErrorController extends AppController
{
    public function beforeRender(Event $event)
    {
        parent::beforeRender($event);
        $this->viewBuilder()->templatePath('Error');
    }
}

学分归入&#34; Test Testington&#34;