Django forloop索引操作

高海姆

我很难理解Django的forloop.counter是什么。我的意图是将for循环的每三个迭代包装到<div>我希望它如何工作是这样的:

{% for staff in staff_members %}
    {% if (forloop.counter + 2 % 3) == 0 %} // if loop is the first of three
    <div class="row">
    {% endif %}
        {{ staff }}

    // close <div class="row"> if loop is last of three
{% endfor %}

这不起作用,因为似乎Django不喜欢在forloop.counter上进行操作。在视图中执行此操作似乎过于复杂,我宁愿在模板中执行此操作,因为它纯粹是一个表示/样式问题。

虚假的

您可以使用cycletag

例如:

from django.template import Template, Context
t = Template("""
{% for staff in staff_members %}
     {% cycle '<div class="row">' '' '' as div %}
     {{ staff }}
     {% cycle '' '' '</div>' as div %}
{% endfor %}
{% if not staff_members|length|divisibleby:3 %}
    </div>
{% endif %}
""")
print t.render(Context({'staff_members': [1,2,3,4,5,6,7,8]}))

打印(删除一些空行以便于阅读)

<div class="row">
1
2
3
</div>

<div class="row">
4
5
6
</div>

<div class="row">
7
8
</div>

UPDATE处理结束标记。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

模板中的Django forloop

来自分类Dev

Django模板在forloop中的总数

来自分类Dev

Python Django中的forloop内的变量

来自分类Dev

Django模板forloop和if条件问题

来自分类Dev

django forloop计数器作为变量

来自分类Dev

Django-使用forloop.counter0

来自分类Dev

在 Django 中中断或停止 forloop.counter

来自分类Dev

Django中的索引删除

来自分类Dev

操作顺序Django模板

来自分类Dev

Django 多对一操作

来自分类Dev

forloop.last在Django中不起作用

来自分类Dev

DJANGO-在模板变量中使用forloop.counter

来自分类Dev

Django Bootstrap卡片组(如果forloop可被整除)

来自分类Dev

2D forloop计数器Django模板

来自分类Dev

DJANGO-在模板变量中使用forloop.counter

来自分类Dev

使用forloop在Django模板中创建自定义表

来自分类Dev

Django1.5 forloop.counter在模板中未增加

来自分类Dev

django mysql强制使用索引

来自分类Dev

Django PostgreSQL双索引清理

来自分类Dev

Django:无法加载模板索引

来自分类Dev

django mysql强制使用索引

来自分类Dev

Django - QuerySet 索引而不是循环

来自分类Dev

django postgresql联接操作查询

来自分类Dev

Django-Angular CRUD操作

来自分类Dev

django操作会话(插入,更新等)

来自分类Dev

Django:在视图中操作模型

来自分类Dev

Django中的网址映射操作

来自分类Dev

jQuery在第一个forloop上工作,而在Django中其他的forloop元素上不工作

来自分类Dev

Django Extend管理员索引