django提供类分页的工具——Paginator类

Paginator对象

类Paginator:
classPaginator(object_list,per_page,orphans=0,allow_empty_first_page=True)
必须提供的参数
object_list:一个列表或元组,元素是djangoQuerySet或是包含count()或__len__()方法的可切片对象。
per_page:包含在一页中最多的条目数量。
可选参数:
orphans:在最后一页中充许的最少条目数量,默认是0.当最后一页条目数量小于或等于orphans时,这些条目加到本页的上一页中。
allow_empty_first_page:是否充许第一页为空。如设为False且object_list为空,则抛出EmptyPage异常。
  方法
Paginator.page(number):返回一个Page对象,序号是始于1.如给出的页号不存在,抛出InvalidPage异常。
  属性
Paginator.num_pages:页面总页数
Paginator.page_range:页面数的范围,始于1,如[1,2,3,4]。
  InvalidPage异常
如要求的页面无效或页面中没有对象,page()抛出InvalidPage异常。
  PageNotAnInterger:当提供给page()的数不是整数是抛出该异常。
EmptyPage:当提供给page()的数是一个有效数,但在该页没有对象存在时,抛出该异常。
  Page对象   classPage(object_list,number,paginator):
一般不手工创建Pages,可以使用Paginator.page().
  方法:
Page.has_next():如有下一页则返回True
Page.has_previous():如有上一页则返回True
Page.has_other_pages():如有上一页或下一页返回True
Page.next_page_number():返回下一页的页码。不管下一页是否存在都返回。
Page.previous_page_number():返回上一页的页码。不管上一页是否存在都返回。
Page.start_index():返回当前页面中第一个对象的序号,序号始于1.例如:将一个包含5个对象的列表分成每页2个对象,则第二页的start_index()返回3.
Page.end_index():返回当前页面中最一个对象的序号。
  属性
Page.object_list:当前页面中所有的对象
Page.number:当前页面的页码,始于1
Page.paginator:页面相关的Pageinator对象。分享一下我的代码:

views:


转--django提供类分页的工具鈥斺擯aginator类


html:

转--django提供类分页的工具鈥斺擯aginator类


最终效果图(请无视里面的文字):

转--django提供类分页的工具鈥斺擯aginator类

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值