我正在使用django-pagination对对象列表进行分页。它运行得完美无缺。我想给页面上的每个对象指定一个数字,我为此使用了{{forloop.counter}},但问题是它从每个页面上的1开始对象计数。我想显示实际的对象计数。
如果我每页分页10个对象,那么我希望第一个对象的对象号为11,我试图为此编写一个模板过滤器,但不知怎么我无法将request.get.page和{{forloop.counter}}发送到我的筛选器函数中。我不能那样做。
任何方向的帮助都将不胜感激。
发布于 2012-02-21 07:17:37
可以使用add模板标记将当前计数从分页器添加到for循环中。
{{ forloop.counter|add:paginator.page.start_index }}发布于 2017-03-21 13:38:51
我已经在我的模板中使用了这个,并且它的工作正常。
{{ page_obj.start_index|add:forloop.counter0 }}或者你可以用
{% for obj in obj_list %}
{{ forlopp.counter0|add:obj_list.start_index }}
{% endfor %}发布于 2016-09-21 14:42:01
添加分页器起始索引和从零开始的循环计数器
内模板
{% for object in page_objects %}
...
{{ forloop.counter0|add:page_objects.start_index }}
...
...
{% endfor %}在望
objects = Abcdef.objects.all() # Abcdef is the modal
paginator = Paginator(objects, 10)
page_number = request.GET.get('page')
try:
page_objects = paginator.page(page_number)
except PageNotAnInteger:
page_objects = paginator.page(1)
except EmptyPage:
page_objects = paginator.page(paginator.num_pages)
data = {
"page_objects" : page_objects,
}
return render(request, "template/template.html", data)https://stackoverflow.com/questions/9373532
复制相似问题