首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >django forloop模板可重置吗?

django forloop模板可重置吗?
EN

Stack Overflow用户
提问于 2011-03-02 23:04:45
回答 2查看 1.1K关注 0票数 0

是否可以将forloop.counter对象重置为零?

我用它来输出对象,但是当对象类型改变时,我想把它置零,这样我就可以数到5个对象,并输出一个行尾对象(没有右填充)作为该类型中的第五个也是唯一的第五个对象。

如果我有5个对象,前两个是类型a,接下来的3个是类型b,第五个总是得到较小的填充,不管它只是第三个。

下面是我的模板代码:

代码语言:javascript
复制
{% for project in projects %}
    {% ifchanged project.proj_type %}
        {% forloop.counter=="1" %}
        </div>
        <div class="span-4 prepend-top">
            <h5 class="right" >{{ project.proj_type }}</h5>
        </div>

        <div class="span-19 append-1 last" id="row-of-projects">
    {% endifchanged %}

    {% if forloop.counter|divisibleby:"4" %}                    
        <div class="span-4 append-1 prepend-top last" id="project">
    {% else %}
        <div class="span-4 append-1 prepend-top" id="project">
    {% endif %}
        <p class="project-name">{{ project.name }}</p>                    
        <a href="/gallery/{{ project.slug }}/" ><img src="/media/pa/photographs/{{ project.get_photograph }}-t.jpg" alt="{{ project.name }}" /></a>
        </div id="project">
{% endfor %} 
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-03-02 23:33:26

我不太确定我是否明白你需要什么。

您可以使用regroup标签根据类型显示对象。

您可以使用class="{% cycle 'normal' 'normal' 'normal' 'normal' 'special' %}"以不同的方式设置每五个元素的样式。

票数 1
EN

Stack Overflow用户

发布于 2011-03-02 23:28:35

听起来您应该是基于类型的regrouping对象,并在内部循环中进行填充。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5169376

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档