19

{% set X=Y %}Jinja2 では、に組み込まれたファイル内の割り当てられた変数 (つまり ) にどのようにアクセスできますincludeか?

2 つの Jinja2 ファイルが与えられた場合、次のように動作すると思います。

A.jinja:

Stuff
{% include 'B.jinja' -%}
B has {{ N }} references

B.jinja:

{% set N = 12 %}

A.jinjaJinja2 でコンパイルすると、次の出力が生成されると思います。

Stuff 
B has 12 references

ただし、次のものが生成されます。

Stuff
B has  references

Nが設定されているファイルを含むファイルで、上記のような Jinja2 変数にアクセスする方法について、入力をお願いしますN

読んでくれてありがとう。

ブライアン

4

1 に答える 1

34

includeとの間には違いがありimportますが、両方を実行できるはずです。

  • include 'B.jinjaテンプレートをレンダリングするだけで、その中の変数の割り当てやマクロは無視されます。
  • import 'B.jinja' as BB、モジュールであるかのようにインポートするため、を出力する必要がありますB.N
  • from 'B.jinja' import NN変数を直接インポートします。

インポート行を最後のオプションに変更し、それで問題が解決するかどうかを確認します。さらにヘルプが必要な場合は、ドキュメントを参照してください。

于 2010-06-17T08:16:43.290 に答える