drf框架中分页组件

普通分页(最常用)

自定制分页类

pagination.py

from rest_framework.pagination import PageNumberPagination
# 普通分页
class CarPageNumberPagination(PageNumberPagination):
# 默认一页的条数
page_size = 3
# 用户可以自定义选择一页的条数,但最多显示5条
page_size_query_param = 'page_size'
max_page_size = 5
# 默认条数访问 /我们路由设置访问这个视图的路由/?page=页面号
# eg:/我们路由设置访问这个视图的路由/?page=1
# 自定义条数访问 /我们路由设置访问这个视图的路由/?page=页面号&page_size=一页的条数
# eg:/我们路由设置访问这个视图的路由/?page=1&page_size=5

views.py

from . import pagination
class 模型名称(ModelViewSet):
.......
pagination_class = pagination.CarPageNumberPagination

偏移分页

自定制分页类

pagination.py

from rest_framework.pagination import LimitOffsetPagination
# 偏移分页
class CarLimitOffsetPagination(LimitOffsetPagination):
# 默认一页的条数
default_limit = 3
# limit控制一页显示的条数,offset控制偏移的条数(从头开始计数)
limit_query_param = 'limit'
offset_query_param = 'offset'
# 限制limit可以设置的最大显示条数
max_limit = 5
# 接口 /我们路由设置访问这个视图的路由/?limit=一页的条数&offset=偏移的条数
# eg:/我们路由设置访问这个视图的路由/?limit=5&offset=2 # 显示3~7条

views.py

from . import pagination
class 模型名称(ModelViewSet):
.......
pagination_class = pagination.CarLimitOffsetPagination

加密分页

自定制分页类

pagination.py

from rest_framework.pagination import CursorPagination
# 加密分页
class CarCursorPagination(CursorPagination):
# 默认一页的条数
page_size = 3
# 用户可以自定义选择一页的条数,但最多显示5条
page_size_query_param = 'page_size'
max_page_size = 5
# 默认排序规则
ordering = 'pk'
# 采用默认排序访问 /我们路由设置访问这个视图的路由/?cursor=加密串
# eg:/我们路由设置访问这个视图的路由/?cursor=cD0z
# 结合视图类实现OrderingFilter自定义排序规则
# /我们路由设置访问这个视图的路由/?cursor=加密串&ordering=排序字段
# eg:/我们路由设置访问这个视图的路由/?cursor=cD0z&ordering=-price

views.py

from . import pagination
class 模型名称(ModelViewSet):
.......
pagination_class = pagination.CarCursorPagination

drf框架中分页组件的更多相关文章

  1. DRF框架中分页功能接口

    目录 DRF框架中分页功能接口 DRF框架中分页功能接口 一.在框架中提供来三个类来实现分页功能,PageNumberPagination.LimitOffsetPagination.CursorPa ...

  2. Primeng UI框架中 分页组件用法

    1.在当前模块或当前页面的对应的module.ts文件中引入相应组件模块,如:core.module.ts模块. import { PaginatorModule } from 'primeng/pr ...

  3. DRF框架之认证组件用法(第四天)

    1. 什么是drf 框架的认证组件: auth 就等于是jango中的Auth模块,Auth是自带session信息,但是 drf的认证组件可以自定义token携带过去,去判断用的 2.如何实现认证呢 ...

  4. drf框架中认证与权限工作原理及设置

    0909自我总结 drf框架中认证与权限工作原理及设置 一.概述 1.认证 工作原理 返回None => 游客 返回user,auth => 登录用户 抛出异常 => 非法用户 前台 ...

  5. 【DRF框架】序列化组件

    DRF框架的序列化组件 在前后端分离的应用模式中,后端仅返回前端所需的数据,返回的数据类似是JSON,因此需要使用序列化组件进行序列化再将数据返回 使用JsonResponse做序列化 #  使用Js ...

  6. django drf框架中的user验证以及JWT拓展的介绍

    登录注册是几乎所有网站都需要去做的接口,而说到登录,自然也就涉及到验证以及用户登录状态保存,最近用DRF在做的一个关于网上商城的项目中,引入了一个拓展DRF JWT,专门用于做验证和用户状态保存.这个 ...

  7. drf框架中所有视图及用法

    0909自我总结 drf框架中所有视图及用法 一.drf框架中的所有视图类 from django.views import View from rest_framework import views ...

  8. drf框架中jwt认证,以及自定义jwt认证

    0909自我总结 drf框架中jwt 一.模块的安装 官方:http://getblimp.github.io/django-rest-framework-jwt/ 他是个第三方的开源项目 安装:pi ...

  9. 【DRF框架】认证组件

    DRF框架的认证组件 核心代码:       self.perform_authentication(request)  框架自带模块:    from rest_framework import a ...

随机推荐

  1. NTP服务器实现

    时间服务器是一种计算机网络仪器,它从参考时钟获取实际时间,再利用计算机网络把时间信息传递给用户.虽然还有一些比较少用或过时的协议仍然在使用,但现时最重要及广泛使用,作为时间信息发送和同步化的协议是网络 ...

  2. Redis是否安装

    1.Redis对否安装(安装好了会出现下面对应的代码) [lk@localhost /]$ whereis redis-cli redis-cli: /usr/local/bin/redis-cli ...

  3. airflow + CeleryExecutor 环境搭建

    airflow整合环境搭建 1. 整体结构 mysql -> 后端数据库 redis -> 用于broker CeleryExecutor -> 执行器 2. 环境安装 2.1,安装 ...

  4. springboot Transactional事务的使用

    直接上代码: import javax.transaction.Transactional; @Transactional(rollbackOn = { Exception.class }) publ ...

  5. springboot---redis缓存的使用

    1.下载redis安装包,解压到电脑 2.启动redis 3.springboot  application.properties中配置redis缓存 spring.redis.host=127.0. ...

  6. 纯css耍个透明正方体转一转

    效果 效果图如下 ​ 实现思路 定义一个最外层的容器,用来控制显示的位置 定义一个父容器,用来设置元素被查看位置的视图,这里使用到CSS3的perspective 属性 定义子容器,设置为相对定位,利 ...

  7. charles 反向代理

    本文参考:charles 反向代理 这个比较有逼格了: 正向代理和反向代理的区别: 正向代理:是代理客户端,为客户端收发请求,使真实客户端对服务器不可见:在客户这一端的,替客户收发请求(类似现在正常使 ...

  8. Java连载33-对象的创建和使用、内存分析

    一.创建一个学生类 每个学生都有学号信息,但是每一个学生的学号都是不同的,所以要访问这个学号必须先创建对象,通过对象去访问学号信息,学号信息不能直接通过“类”去访问,所以这种成员变量又被称为“实例变量 ...

  9. Layer弹层(父子传值,兄弟传值)

    需求:最外面列表界面点修改弹出LayerA界面,再点击LayerA界面中的选择地图坐标按钮弹出LayerB地图界面 这个过程涉及到的: 1:LayerA将坐标传给LayerB,LayerB在地图上显示 ...

  10. Java网络编程--Netty中的责任链

    Netty中的责任链 设计模式 - 责任链模式 责任链模式(Chain of Responsibility Pattern)是一种是行为型设计模式,它为请求创建了一个处理对象的链.其链中每一个节点都看 ...