当前位置: 首页 > 工具软件 > Paginator > 使用案例 >

Django的paginator对象

林曦之
2023-12-01

分页定义

  • 分页是指web页面有大量数据需要显示,为了阅读方便在每个页面中显示分布数据

  • 优点:

    • 方便阅读

    • 减少数据提取量,减轻服务器压力

--Django提供了Paginator类可以方便的实现分页功能

--Paginator类位于‘django.core.paginator’模块中

Paginator对象

负责分页数据整体的管理

对象的构造方法

paginator=Paginator(object_list,per_page)
-参数
    -object_list需要分类数据的对象列表
    -per_page每页数据个数
-返回值:
    -Paginator的对象

Paginator属性

-count:需要分页数据的对象总数

-num_pages:分页后的页面总数

-page_range:从1开始的range对象,用于记录当前页码数

-per_page 每页数据的个数

Paginator方法

paginator对象.page(number)
    -参数number为页码信息(从1开始)
    -返回当前number页对应的页信息
    -如果提供的页码不存在,抛出InvalidPage异常

Paginator异常exception

InvalidPage:总的异常基类,包含以下两个异常子类
    -PageNotAnInteger:当向page()传入一个不是整数的值时抛出
    -EmptyPage:当向page()提供一个有效值  但是那个页面上没有任何对象时抛出

Page对象 定义

负责具体某一页的数据的管理

创建对象

Paginator对象的page()方法返回Page对象

page=paginator.page(页码)

Page对象属性

-object_list:当前页上所有数据对象的列表

-number:当前页的序号,从1开始

-paginator:当前page对象相关的Paginator对象

Page对象方法

has_next():如果有下一页返回True

has_previous():如果有上一页返回True

has_other_pages():如果有上一页或下一页返回True

next_page_number():返回下一页的页码,如果下一页不存在,就抛出InvalidPage异常

previous_page_number():返回上一页的页码,如果上一页不存在,就抛出InvalidPage异常

 

 类似资料: