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)}}">

個別のエントリが存在しない場合は、小枝に 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

もう 1 つの解決策は、strict_variablesconfig.yml ファイルで false に設定することです。

twig:
    ...
    strict_variables: false
于 2013-05-09T08:42:35.443 に答える