嗨,我正在查看有关 django 分页器的 https://docs.djangoproject.com/en/2.1/topics/pagination/文档
在它使用的代码中
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>
我了解所有代码,除了第一次渲染页面的价值
在行中
页面 = 请求。GET.get('page'(
我知道姜戈运行
?页面=值
并将值传递给页面参数,但页面在第一次呈现中的值是多少
在这种情况下,page
将被None
,然后get_page
将返回第一页。