default

The default filter returns the passed default value if the value is undefined or empty, otherwise the value of the variable:

デフォルト フィルタは、値が未定義または空の場合は渡されたデフォルト値を返し、それ以外の場合は変数の値を返します。
1
2
3
4
5
6
7
{{ var|default('var is not defined') }}

{{ var.foo|default('foo item on var is not defined') }}

{{ var['foo']|default('foo item on var is not defined') }}

{{ ''|default('passed var is empty')  }}

When using the default filter on an expression that uses variables in some method calls, be sure to use the default filter whenever a variable can be undefined:

メソッド呼び出しで変数を使用する式でデフォルト フィルタを使用する場合は、変数が未定義の可能性がある場合は必ずデフォルト フィルタを使用してください。
1
{{ var.method(foo|default('foo'))|default('foo') }}

Using the default filter on a boolean variable might trigger unexpected behavior, as false is treated as an empty value. Consider using ?? instead:

ブール変数でデフォルト フィルタを使用すると、false が空の値として扱われるため、予期しない動作が発生する可能性があります。使用を検討してください??代わりは:
1
2
3
{% set foo = false %}
{{ foo|default(true) }} {# true #}
{{ foo ?? true }} {# false #}

Note

ノート

Read the documentation for the defined and empty tests to learn more about their semantics.

セマンティクスの詳細については、定義された andempty テストのドキュメントを参照してください。

Arguments

  • default: The default value
    デフォルト: デフォルト値