我们首页的数据量较多,一次加载会很浪费时间,我们需要做下分页处理,django官方文档有对分页说明,也有单独处理的方法,django文档:https://docs.djangoproject.com/en/1.11/topics/pagination/
在看之前我们先想象下分页需要什么数据
一共有多少数据,一页展示多少条,共展示几页数据
其实我们需要的就是这么几种数据来实现就oK了
我们需要django的Paginator
需要导入
from django.core.paginator import Paginator
首先获取一共有多少条数,这里我们的models就可以处理的很好,获得的是list
P = Paginator(list,5) # 意思是讲列表的数据分组,一组显示5个数据
sheetNum = P.page_range #对我们上面的到的数据进行查看,能分几页,返回的是元组类型
pages = P.page(页数) # 返回我们传入页数的数据
有这几个就够我们用了
image.png我们来看下前端展示,has_previous判断是否存在上一页,存在返回True,进行翻页,不存在返回False,就不会显示,has_next判断是否存在下一页,有就显示,没有不显示下一页
image.png image.png image.png我们先来看下前端展示
image.png这样就可以了
网友评论