如何在扩展了内置异常的插件中仅用一个异常模板替换自己的异常? :)
位于/vendor/author/pluginName/src/Exception/TestException.php
但是我尝试用创建文件/src/Template/PluginName/Error/test.ctp
替换模板,但是不起作用。
当然,如果我在/src/Template/Error/test.ctp
中创建文件,效果很好。
我有很多插件,每个插件都有自己的TestException
类。
那么,我该如何使用/PluginName
目录?
蛋糕3.6
答案 0 :(得分:0)
在应用程序级别覆盖插件模板的正确模板路径以Template/Plugin/
开头,然后是插件名称和预期的本地模板路径,即,对于名为Foobar
的插件而言,覆盖路径其test
错误模板为:
src/Template/Plugin/Foobar/Error/test.ctp
另外请务必牢记,如果在当前全局请求对象({{1}时,在插件控制器请求中触发了异常,默认情况下,错误模板将默认情况下仅在插件中查找) })设置了插件参数(Router::getRequest(true)
)!
还应注意,映射到异常/方法名称的单个模板将仅用于非HTTP异常($request->getParam('plugin')
),并且仅在启用调试模式(如果它是HTTP异常)时使用或禁用了调试模式,则仅使用\Cake\Http\Exception\HttpException
或error400
模板!
另请参见