很多人看到django自带的分页器涉及的属性和方法那么多,一下子就懵住了,还有些直接放弃了内置的分页器,直接用pagination了,可问题是,面对10000+多条的数据时,pagination用不上啊。乖乖学会用paginator吧!

三步搞定分页:

一、paginator基本语法

基本语法

这个只是内置paginator的语法,看一看里面包含什么方法就好,认真去记的话就输了。真正调用的时候其实很简单!

这里写图片描述

建议大家把上面的实例一条条地看一遍,不用记!但是你会发现,很多都是用来做if判断的参数,这时候,有经验的小伙伴就开始有点眉目了!搞大半天原来做分页就是一连串的if——else判断!

二、视图实例讲解

接下来给大家把view中用到的参数和模块讲解一下,你会发现,其实用到的变量也就那么几个而已!

这里写图片描述

看!主要把要查询的结果集获取到,然后交给Paginator就好了,格式是:

Paginator(‘要进行分页的结果’,‘每页显示的数据量’,‘少于多少条数据会自动合并到前一页’)
这样看起来是不是好理解多了?因为paginator内置的方法已经帮你处理了很多事情了,你只管传参数就行!

三、模板设置

接下来就是要做模板设置了,就是一连串的if——else语句而已!还记得之前基本语法实例里的东西吗?其实用到的就只有这几个:

has_previous :是否有上一页
previous_page_number:第二分页对象的上一页码的值
paginator.page_range:总页数范围
has_next:是否有下一页

这里写图片描述

Logo

助力广东及东莞地区开发者,代码托管、在线学习与竞赛、技术交流与分享、资源共享、职业发展,成为松山湖开发者首选的工作与学习平台

更多推荐