如何将django模板中的循环偏移一个

时间:2016-03-03 05:24:29

标签: python django

我想在我的标题中显示我的最新帖子,并让for循环中的其他帖子偏移一个,所以我的标题中的帖子不同,而我的其他帖子都是。

在我的views.py中我有

 latest = Post.objects.latest('id')

 context = {
    ......
    "latest": latest
  }
我的list.html中的

 <div class="jumbotron col-sm-12">
    <div class="container">
        <div class="row">
            <p>{{latest}}</p>
            <div class="col-sm-8">
                <img src='{{ latest.image.url }}' class="img-responsive"/>
            </div>
            <div class="col-sm-4 pull-right" style="background-color: #212121; height: 300px">


            </div>

        </div>
    </div>
</div>

 {% for q in object_list %}
    {{ q.title }}
 {% endfor %}

如何将for循环偏移1

1 个答案:

答案 0 :(得分:2)

如果您从上下文中获取object_list,我建议您仅删除第一个对象:

object_list[1:]

但是,如果您确实想在模板中执行此操作,则可以使用内置的slice过滤器:

{% for q in object_list|slice:"1:" %}
    {{ q.title }}
 {% endfor %}

它使用与python列表相同的语法进行切片。

  

使用与Python列表切片相同的语法。有关简介,请参阅http://www.diveintopython3.net/native-datatypes.html#slicinglists

另一种方法是从latest

中排除object_list对象
object_list = object_list.exclude(id=latest.id)

然后,您不需要对列表进行切片。