如何在Django for循环模板中获取奇数和偶数值?

tej*_*tan 54 django django-templates

我有这个代码

{% for o in some_list %}
Run Code Online (Sandbox Code Playgroud)

现在我想做一些事情,如果我在一个平坦的线上.我怎样才能做到这一点?

ber*_*nie 117

https://docs.djangoproject.com/en/dev/ref/templates/builtins/#divisibleby

这里:

{% if forloop.counter|divisibleby:2 %}even{% else %}odd{% endif %}
Run Code Online (Sandbox Code Playgroud)

  • +1.还值得指出`cycle`标签,取决于你想要在偶数行上做什么/为什么. (5认同)

Nik*_*nyh 89

在第一级循环中:

{% cycle 'odd' 'even' %}
Run Code Online (Sandbox Code Playgroud)

  • 由于有多种方法可以使用此标签,因此可以通过示例来改进这个答案,例如 Django 文档中的内容:https://docs.djangoproject.com/en/2.2/ref/templates/builtins/#cycle (2认同)

7gu*_*uyo 5

<div class="row">
{% for post in posts %}
      {% cycle 'odd' 'even' %}
      {% if cycle == 'odd' %}
        <div class="col-md-6">Odd posts</div>
      {% else %}
        <div class="col-md-6">Even posts</div>
      {% endif %}
    {% endfor %}
</div>
Run Code Online (Sandbox Code Playgroud)

或者

<div class="row">
{% for post in posts %}
   {% if forloop.counter|divisibleby:2 %}
        <div class="col-md-6">Even posts</div>
      {% else %}
        <div class="col-md-6">Odd posts</div>
      {% endif %}
    {% endfor %}
</div>
Run Code Online (Sandbox Code Playgroud)