with
¶
Use the with
tag to create a new inner scope. Variables set within this
scope are not visible outside of the scope:
with タグを使用して、新しい内部スコープを作成します。このスコープ内で設定された変数は、スコープ外では見えません。
1 2 3 4 5 |
{% with %}
{% set foo = 42 %}
{{ foo }} {# foo is 42 here #}
{% endwith %}
foo is not visible here any longer
|
Instead of defining variables at the beginning of the scope, you can pass a
hash of variables you want to define in the with
tag; the previous example
is equivalent to the following one:
スコープの先頭で変数を定義する代わりに、with タグで定義したい変数のハッシュを渡すことができます。前の例は、次の例と同等です。
1 2 3 4 5 6 7 8 9 10 |
{% with { foo: 42 } %}
{{ foo }} {# foo is 42 here #}
{% endwith %}
foo is not visible here any longer
{# it works with any expression that resolves to a hash #}
{% set vars = { foo: 42 } %}
{% with vars %}
...
{% endwith %}
|
By default, the inner scope has access to the outer scope context; you can
disable this behavior by appending the only
keyword:
デフォルトでは、内側のスコープは外側のスコープ コンテキストにアクセスできます。 only キーワードを追加することで、この動作を無効にすることができます。
1 2 3 4 5 |
{% set bar = 'bar' %}
{% with { foo: 42 } only %}
{# only foo is defined #}
{# bar is not defined #}
{% endwith %}
|