ハンドルバーでは、this
を使用して現在のコンテキストをルックアップできます。Nunjucksで現在のコンテキストを検索するには?
あなたはNunjucksでこれをどうやってやりますか? (しかしthis
はNunjucksで動作するようには思えません):あなたはJSON文字列として全体の文脈ダンプしたい場合
例えば、
<script>window.__config__ = {{ this | dump | safe }};</script>
を
ハンドルバーでは、this
を使用して現在のコンテキストをルックアップできます。Nunjucksで現在のコンテキストを検索するには?
あなたはNunjucksでこれをどうやってやりますか? (しかしthis
はNunjucksで動作するようには思えません):あなたはJSON文字列として全体の文脈ダンプしたい場合
例えば、
<script>window.__config__ = {{ this | dump | safe }};</script>
を
は、あなたはグローバル機能を追加することができます
var env = nunjucks.configure([...
...
env.addGlobal('getContext', function() {
return this.ctx;
})
と `テンプレートはエラーレンダリングテンプレート
に{{ getContext() | dump| safe }}
を私はあなたとは思いません変数this
はnunjucksテンプレートで利用できますが、検査する場合はdump
メソッドを使用できます。
{{ users | dump }}
だからそれはあなたがautoscapeしている場合は、本当に醜いれ、JSONオブジェクトを出力します。
{{ users | dump | safe }}
これは
代わりにうまく動作します:あなたがcontext
が必要な場合は
env.addFilter('pprint', function(str, count) {
return JSON.stringify(str, null, 4);
});
{{ users | pprint | safe }}
を彼女の結果をダンプ:TypeError例外:JSON'に円形構造の変換は、私は全くの私のテンプレートには何も追加しませんでした注意してください。 –
このエラーは、文字列自己参照オブジェクトに変換しようとしたことを意味します。 'var obj = {a:10}; obj.b = obj; console.log(JSON.stringify(obj)); '(フィルタダンプは' JSON.stringify'と同じです)。たとえば、独自のフィルタを定義することができます。デバッグに 'dump'(=' JSON.stringify')の使用を避けるために、 'console.log(obj)'として 'print'を使用します。 –
Bro文字通りコードを差し込み、このエラーが発生しました。 –