for循环外模板中的计数器增量

2024-09-29 22:00:40 发布

您现在位置:Python中文网/ 问答频道 /正文

我需要在循环中做一个计数器增量。我看了一下django计数器,但不幸的是,我的增量并不是在循环的每次迭代中都发生的。那么有没有什么方法可以让我在django模板中实现变量的增量,而不必费劲在代码中实现一个新对象,而不需要这样的增量呢?在

在下面的代码中,我编写{{ count = 0 }}{{ count += 1 }}这几行只是为了说明。我知道这行不通。以下是我的模板的简化形式:

<div class="jumbotron slotgroup slotavailable mb-1 mt-5" id="jumbo_week_avail">
  <div class="slot-header" role="alert">
    Headertext
  </div>
  {% if weeklyslotsav %}
    {% for day,daynum in weekzip %}
    {{ count = 0 }}
      {% if daynum in weeklyslotsav.day %}
        {% for weekslotav in weeklyslotsav %}
          {% if weekslotav.day == daynum %}
          <div class="row row_week_avail{{ weekslotav.day }}" id="row_week_avail{{ weekslotav.day }}_{{ count }}">
          </div>
          {{ count += 1 }}
          {% endif}
        {% endfor %}
      {% else %}
      <div class="row row_week_avail{{ daynum }}" id="row_week_avail{{ daynum }}_0">
      </div>
      {% endif %}
    {% endfor %}
  {% else %}
    {% for weekday, weeknum in weekzip %}
    <div class="row row_week_avail{{ weeknum }}" id="row_week_avail{{ weeknum }}_0">
    </div>
    {% endfor %}
  {% endif %}
</div>

以下是我的观点:

^{pr2}$

我见过很多类似的问题。然而,在所有这些书中,我都看到有人介绍for.counter。但这不适合我的目的。在


Tags: individforifcount增量class
1条回答
网友
1楼 · 发布于 2024-09-29 22:00:40

您可以使用with标记将模板中的变量设置为-

{% with count=0  %}        
   {{ count}}
    ...do other stuffs 
{% endwith %}

对于数学,你可以用djangomath filters之类的

{{ count|add:"1" }}

你可以用这两者来编写代码。在

有关在django模板中设置变量的详细信息-How to set a value of a variable inside a template code?

以及在django中使用数学-How to do math in a Django template?

希望这对你有帮助。在

相关问题 更多 >

    热门问题