CakePHP 3:防止在呈现错误时出现部分渲染的视图

时间:2017-04-05 14:05:35

标签: cakephp-3.0

在/ Template / Error /我修改了error400.ctp和eror500.ctp,以便在关闭调试时使用默认布局。

这很好用。但是如果控制器操作的代码中没有出现错误,但是在视图中(例如,由于查询仅在视图中需要时立即执行),则错误页面包含原始操作视图的一部分渲染,然后用于显示错误的布局和内容的html代码:

<form method="post" accept-charset="utf-8" action="/index">
<div class="box-normal">
    <select>…</select>
    <!-- the error occurs after the next </div>,
         and after that the output of the error page
         starts with <!DOCTYPE html> -->
</div><!DOCTYPE html>
<html>
    <head>
    </head>
    <body>
    </body>
</html>

这当然是无效的html,也让用户感到困惑。

有没有办法在渲染错误之前刷新输出缓冲区,以便丢弃已经渲染的视图的任何部分?

0 个答案:

没有答案