您好,我在查看有关https://docs.djangoproject.com/en/2.1/topics/pagination/的有关django分页器的文档
使用的代码中
from django.core.paginator import EmptyPage, PageNotAnInteger, Paginator
from django.shortcuts import render
def listing(request):
contact_list = Contacts.objects.all()
paginator = Paginator(contact_list, 25) # Show 25 contacts per page
page = request.GET.get('page')
contacts = paginator.get_page(page)
return render(request, 'list.html', {'contacts': contacts})
在模板中使用
<div class="pagination">
<span class="step-links">
{% if contacts.has_previous %}
<a href="?page=1">« first</a>
<a href="?page={{ contacts.previous_page_number }}">previous</a>
{% endif %}
<span class="current">
Page {{ contacts.number }} of {{ contacts.paginator.num_pages }}.
</span>
{% if contacts.has_next %}
<a href="?page={{ contacts.next_page_number }}">next</a>
<a href="?page={{ contacts.paginator.num_pages }}">last »</a>
{% endif %}
</span>
</div>
我理解所有代码,但首次呈现时将成为 page
的值在行
page = request.GET.get('page')
我知道django运行
?page = Value
并将值传递给页面聚集体,但是第一次渲染时页面的值是什么
答案 0 :(得分:0)
page
将是None
,然后get_page
将返回第一页。