12月15日学习内容整理:Django的分页器

补充:整体插入多条记录

表名.objects.bulk_create([一个个model对象])

这样就会在表中一次性的创建多条记录

 

一、Django的分页器

1、引入:

from django.core.paginator import Paginator, EmptyPage, PageNotAnInteger

2、paginator对象

paginator = Paginator(queryset类型, 10)    不一定非要是queryset类型,可迭代的就行,10代表每页显示多少条数据

这样就得到了一个paginator对象

3、paginator对象的三个属性

paginator.count    #数据总数,也就是总共有多少条记录

paginator.num_pages   #总页数

paginator.page_range    #指的是所有的页码,range()表示

4、具体的某一页对象

page1=paginator.page(1)    1就代表第一页,page1就代表第一页对象

》》》可以对page1for循环,循环出的就是每一个model对象,也就是记录

》》》page1.project_list()    就可以拿到所有具体的数据

5、某一页对象的四种方法

page1.has_next()                                    #是否有下一页

page1.next_page_number()                   #下一页的页码

page1.has_previous()                            #是否有上一页

page1.previous_page_number()           #上一页的页码

 

6、两种异常

EmptyPage    不存在的页码对象,可能已经超出最后一页了

PageNotAnInteger   页码输入不是数字

page=paginator.page(12)   # error:EmptyPage

page=paginator.page("z")   # error:PageNotAnInteger

 

posted @ 2017-12-17 16:12  九二零  阅读(75)  评论(0编辑  收藏  举报