11

有没有一种聪明的方法来显示/使用一个只有存在的树枝变量?

说,我有一个结构:

'opt1': {'visible': false, 'bundle': 'XxxBundle', 'name': 'label1'},
'opt2': {'visible': true, 'bundle': 'YyyBundle', 'name': 'label2', 'params': '/par1'},

我用它:

<a href="{{path(desc.bundle ~ '_' ~ action ~ desc.params)}}">

如果不存在不同的条目,我希望 twig 省略 desc.params 。有没有比使用if语句更聪明的方法?

4

2 回答 2

18

您可以将默认的空白字符串传递给它。

<a href="{{path(desc.bundle ~ '_' ~ action ~ desc.params|default(''))}}">

这样,如果它没有定义它只是一个空字符串。您可以在此处阅读有关默认过滤器的更多信息:http: //twig.sensiolabs.org/doc/filters/default.html

于 2013-03-08T20:00:21.433 回答
4

另一种解决方案是strict_variables在 config.yml 文件中设置为 false:

twig:
    ...
    strict_variables: false
于 2013-05-09T08:42:35.443 回答