分页

在Django中实现分页功能非常简单.因为Django已经内置了两个处理分类的类.分别是Paginator和Page.Paginator用来管理整个分类的一些属性,Page用来管理当前这个分页的一些属性.通过这两个类,就可以轻松的实现分页效果.以下对这两个类进行讲解.

Paginator类:

Paginator是用来控制整个分页的逻辑的.比如总共有多少页,页码区间等等.都可以从他上面来获取.

创建Paginator对象:

class Paginator(object_list, per_page, orphans=0, allow_empty_first_page=True)

其中的参数解释如下:

object_list:列表,元组,QuerySet或者是任何可以做切片操作的对象.会将这个里面的对象进行分页.

per_page:分页中,一页展示多少条数据.

orphans:用来控制最后一页元素的个人如果少于orphans指定的个数的时候,就会将多余的添加到上一页中.

allow_empty_first_page:如果object_list没有任何数据,并且这个参数设置为True,那么就会抛出EmptyPage异常.

常用属性和方法:

Paginator.page(number):获取number这页的Page对象.
count:传进来的object_list总共的数量。
num_pages:总共的页数.
page_range:页码的列表.比如[1,2,3,4]。

Page类:

常用属性和方法:

has_next():是否还有下一页.
has_previous():是否还有上一页.
next_page_number():下一页的页码.
previous_page_number():上一页的页码.
object_list:在当前这页上的对象列表.
number:当前的页码.
paginator:获取Paginator对象.

最新文章

  1. HTTP - GET和POST的区别
  2. 项目开发中常用到的SQL语句
  3. C#下如何用NPlot绘制期货股票K线图(1)?
  4. 【POJ 2010 Moo University-Financial Aid】优先级队列
  5. IT人不要一直做技术
  6. mysql 远程连接数据库的二种方法
  7. linux 实现centos7在线升级最新版本内核
  8. C#第一课
  9. jdbc一点小笔记
  10. CF865D Buy Low Sell High 贪心
  11. python之初级篇2
  12. Uploadify提示-Failed,上传不了文件,跟踪onUploadError事件,errorMsg:2156 SecurityError Error #2156 null
  13. U盘安装Win7系统,遇到硬盘鼠标键盘失灵等情况,如何安装U盘中加入USB3.0驱动的支持
  14. 转转转!!Spring MVC控制器用@ResponseBody声明返回json数据报406的问题
  15. UVa 1515 - Pool construction(最小割)
  16. spring加载ApplicationContext.xml的四种方式
  17. 常用算法Java实现之冒泡排序
  18. C#中Windows通用的回车转Tab方法
  19. nginx反向代理与正向代理
  20. git回溯到指定版本

热门文章

  1. 基于numpy的随机数构造
  2. centos 7安装完后出现please make your choice from '1' to e
  3. JS——覆盖显示,点击显示三层
  4. FXGameEngine
  5. mui时间选择器选择今天以后的时间
  6. 从git中更新本地需要填写的正则
  7. C++ 类的多态二(函数重载--函数重写--函数重定义)
  8. 第二百二十八节,jQuery EasyUI,TreeGrid(树形表格)组件
  9. MongoDB中关于查询条件中包括集合中字段的查询
  10. IPMI特点和功能