Django在核心中内置了Paginator对象。这是一个相当简单的API。Paginator使用两个参数实例化一个类:列表和每个“页面”的条目数。我将在底部粘贴一些示例代码。
在您的情况下,您要允许用户选择每页计数。您可以使每页计数成为URL的一部分(即your / page / 10 /),也可以使其成为查询字符串(即your / page /?p = 10)。
就像是...
# Assuming you're reading the Query String value ?p=
try:
per_page = int(request.REQUEST['p'])
except:
per_page = 25 # default value
paginator = Paginator(objects, per_page)
Run Code Online (Sandbox Code Playgroud)
以下是Django文档页面中一些用于Paginator的示例代码,以更好地了解其工作方式。
>>> from django.core.paginator import Paginator
>>> objects = ['john', 'paul', 'george', 'ringo']
>>> p = Paginator(objects, 2)
>>> p.count
4
>>> p.num_pages
2
>>> p.page_range
[1, 2]
>>> page1 = p.page(1)
>>> page1
<Page 1 of 2>
>>> page1.object_list
['john', 'paul']
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2021 次 |
| 最近记录: |