{% set cnt = 0 %}
{% for room in rooms %}
{% for bed in room %}
{% set cnt = cnt + 1 %}
{% endfor %}
{{ cnt }}
{% endfor %}
ネストされたループがあるとします。出力された cnt は常に 0 になります。これは、最初の for ループに入ったときに定義されたものだからです。内側のループでカウンターをインクリメントすると、それは内側のループのローカル変数にすぎないように見えるため、ループ内でインクリメントされますが、そのローカル cnt はなくなります。グローバル cnt をどのように変更できますか???
Jinja2 のドキュメントは素晴らしいかもしれませんが、変数のスコープの設定については不明です。スコープについて言及しているのは、内部ブロックの「スコープ」修飾子だけでしたが、すべてに適用することはできないと思います...クレイジーです。