标签:传递 返回 objects span 创建 nat lis gen 通过
1.Paginator
数据分页工具
对象创建 : Paginator(数据集,每一页显示条数)
属性 count:对象总数
page_range:页码列表,从1开始
num_pages:页面总数
方法: page(整数):获得一个page对象
示例代码:
# pindex 当前是第几页 psize 每页显示条数
blogs = Blog.objects.all()
p = Paginator(blogs, psize)
ptotal = p.num_pages
p_list = p.page(pindex)
错误总结:
InvalidPage:page()传递无效页码
PageNotAnInteger:page()传递的不是整数
Empty:page()传递的值有效,但是没有数据
2、Page
具体的某一页面
对象获得,通过Paginator的page()方法获得
属性
object_list:当前页面上所有的数据对象
number:当前页的页码值
paginator:当前page关联的Paginator对象
方法
has_next():判断是否有下一页
has_previous():判断是否有上一页
has_other_pages():判断是否有上一页或下一页
next_page_number():返回下一页的页码
previous_page_number():返回上一页的页码
len():返回当前页的数据的个数
def showBlogs(request, pagenum):
# 查询数据库获取所有博文
blogs = Blog.objects.all()
# 构建分页器对象,blogs=所有博文,2=每页显示的个数
paginator = Paginator(blogs, 2)
# 获取第n页的页面对象
page = paginator.page(pagenum)
# Paginator和Page的常用API
# page.previous_page_number()
# page.next_page_number()
# page.has_previous()
# page.has_next()
原文链接:https://blog.csdn.net/weixin_44266650/article/details/87862908
标签:传递 返回 objects span 创建 nat lis gen 通过
原文地址:https://www.cnblogs.com/wllit/p/12376255.html