使用{%render“Bundle:Controller:Action”%}时返回:
throw $this->createNotFoundException('Error - 404');
它成功地导致页面在开发模式下出错,但在生产模式下页面呈现除了{%render%}部分,现在它只是空白。
我希望整个页面显示404页面,就像在父操作中抛出异常一样。
有人有任何建议吗?
由于
答案 0 :(得分:1)
它成功地导致页面在开发模式下出错,但是在 除了{%render%}部分之外,页面呈现的生产模式 现在它只是空白。
这似乎是合法的。你用
{% render "Bundle:Controller:Action" %}
仅呈现您网页的一部分,例如一份菜单。如果特定渲染操作抛出404,则它仅影响网站的这一部分而不影响整个页面。
此外,为什么整个页面显然会很好地被一个仅影响页面一部分的404错误页面阻止?这不是好习惯。如果错误非常重要,那么您应该在控制器级别的更高实例上触发它。
答案 1 :(得分:0)
要带回错误而不是静默失败,只需在with对象后面添加ignore_errors选项。
e.g。
{% render 'Bundle:Controller:Action' with { }, { 'ignore_errors' : false } %}