我想在具有特定外键的对象上显示分页,在文档的帮助下,我使用了这个:
def baslik_handle(request, title):
baslik, created = Baslik.objects.get_or_create(title=title)
entryler2 = Entry.objects.filter(baslik=baslik).order_by('timestamp')
paginator = Paginator(entryler2, 10)
page = request.GET.get('page')
try:
sayfalar = paginator.page(page)
except PageNotAnInteger:
sayfalar = paginator.page(1)
except EmptyPage:
sayfalar = paginator.page(paginator.num_pages)
ctx = {'entryler2':entryler2, 'sayfalar':sayfalar}
return render(request, "baslik/tek.html", ctx)
表示html:
{% for entry in entryler2 %}
{{ entry }}<br>
{% endfor %}
<div class="pagination">
<span class="step-links">
{% if sayfalar.has_previous %}
<a href="?page={{ sayfalar.previous_page_number }}"><i class="fa fa-arrow-left"></i></a>
{% endif %}
<span class="current">
{{ sayfalar.number }} / {{ sayfalar.paginator.num_pages }}
</span>
{% if sayfalar.has_next %}
<a href="?page={{ sayfalar.next_page_number }}"><i class="fa fa-arrow-right"></i></a>
{% endif %}
</span>
</div>
毕竟这个分页不起作用。它只是计算页码而不是将对象分离到页面。
例如,我有26&#34; Entry&#34; s具有相同的Baslik外键。当我查看它的页面时,它只列出所有3页中的所有26&#34;条目。我的代码出了什么问题?我该怎么做才能解决这个问题?感谢。
答案 0 :(得分:0)
取代了这个:
{% for entry in entryler2 %}
到此:
{% for entry in sayfalar %}
并且已修复。