Zagnieżdżony licznik pętli Jinja2

{% set cnt = 0 %}
{% for room in rooms %}
  {% for bed in room %}
    {% set cnt = cnt + 1 %}
  {% endfor %}
{{ cnt }}
{% endfor %}

Powiedzmy, że mamy tę zagnieżdżoną pętlę, wydrukowane cnt ZAWSZE będzie 0, ponieważ to zostało zdefiniowane, gdy weszliśmy do 1. pętli for. Kiedy zwiększamy licznik w wewnętrznej pętli, wydaje się, że jest to jedynie zmienna lokalna dla pętli wewnętrznej - tak więc będzie ona zwiększać się w pętli, ale wtedy to lokalne cnt zniknie. JAK możemy zmodyfikować globalny cnt ??

Tak dobry, jak może być dokument Jinja2, nie ma jasności co do ustawiania zmiennych zakresów. Jedyną rzeczą, która wspomniała o zasięgu, był modyfikator „scoped” dla wewnętrznych bloków, ale myślę, że nie można go zastosować do wszystkiego… szalonego.

questionAnswers(3)

yourAnswerToTheQuestion