gpt4 book ai didi

exception - 忽略 Twig 模板中的异常

转载 作者:行者123 更新时间:2023-12-01 10:02:54 24 4
gpt4 key购买 nike

我有一个模板 area.html.twig 呈现另一个模板:

//area.html.twig
...

{% render 'Acme:User:restricted.html.twig' %}

...

有没有一种方法可以忽略\捕获 restricted.html.twig 抛出的异常,而不是渲染任何内容?

最佳答案

你应该使用 embedded controllers在你的模板中:

{% render "yourBundle:Controller:action" with { 'data': data, } %}

最好使用路由(自 symfony security update 起):

{% render url('theactionroute', { 'data': data }) %}

在操作中,您可以检查任何您想要的内容,并在某些情况下返回空白响应/模板。

您还可以将模板呈现包装在 try & catch block 中,并在出现 twig 异常时返回错误模板:

      try {
$response = $this->render('yourBundle:Default:action.html.twig',
array('data' => $data));
} catch (\Exception $exc) {
return $this->render('yourBundle:Default:error.html.twig', array(
'message' => $exc->getMessage()
));
}

关于exception - 忽略 Twig 模板中的异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14293877/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com