drf框架中分页组件
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框架中分页组件的更多相关文章
- DRF框架中分页功能接口
目录 DRF框架中分页功能接口 DRF框架中分页功能接口 一.在框架中提供来三个类来实现分页功能,PageNumberPagination.LimitOffsetPagination.CursorPa ...
- Primeng UI框架中 分页组件用法
1.在当前模块或当前页面的对应的module.ts文件中引入相应组件模块,如:core.module.ts模块. import { PaginatorModule } from 'primeng/pr ...
- DRF框架之认证组件用法(第四天)
1. 什么是drf 框架的认证组件: auth 就等于是jango中的Auth模块,Auth是自带session信息,但是 drf的认证组件可以自定义token携带过去,去判断用的 2.如何实现认证呢 ...
- drf框架中认证与权限工作原理及设置
0909自我总结 drf框架中认证与权限工作原理及设置 一.概述 1.认证 工作原理 返回None => 游客 返回user,auth => 登录用户 抛出异常 => 非法用户 前台 ...
- 【DRF框架】序列化组件
DRF框架的序列化组件 在前后端分离的应用模式中,后端仅返回前端所需的数据,返回的数据类似是JSON,因此需要使用序列化组件进行序列化再将数据返回 使用JsonResponse做序列化 # 使用Js ...
- django drf框架中的user验证以及JWT拓展的介绍
登录注册是几乎所有网站都需要去做的接口,而说到登录,自然也就涉及到验证以及用户登录状态保存,最近用DRF在做的一个关于网上商城的项目中,引入了一个拓展DRF JWT,专门用于做验证和用户状态保存.这个 ...
- drf框架中所有视图及用法
0909自我总结 drf框架中所有视图及用法 一.drf框架中的所有视图类 from django.views import View from rest_framework import views ...
- drf框架中jwt认证,以及自定义jwt认证
0909自我总结 drf框架中jwt 一.模块的安装 官方:http://getblimp.github.io/django-rest-framework-jwt/ 他是个第三方的开源项目 安装:pi ...
- 【DRF框架】认证组件
DRF框架的认证组件 核心代码: self.perform_authentication(request) 框架自带模块: from rest_framework import a ...
随机推荐
- NTP服务器实现
时间服务器是一种计算机网络仪器,它从参考时钟获取实际时间,再利用计算机网络把时间信息传递给用户.虽然还有一些比较少用或过时的协议仍然在使用,但现时最重要及广泛使用,作为时间信息发送和同步化的协议是网络 ...
- Redis是否安装
1.Redis对否安装(安装好了会出现下面对应的代码) [lk@localhost /]$ whereis redis-cli redis-cli: /usr/local/bin/redis-cli ...
- airflow + CeleryExecutor 环境搭建
airflow整合环境搭建 1. 整体结构 mysql -> 后端数据库 redis -> 用于broker CeleryExecutor -> 执行器 2. 环境安装 2.1,安装 ...
- springboot Transactional事务的使用
直接上代码: import javax.transaction.Transactional; @Transactional(rollbackOn = { Exception.class }) publ ...
- springboot---redis缓存的使用
1.下载redis安装包,解压到电脑 2.启动redis 3.springboot application.properties中配置redis缓存 spring.redis.host=127.0. ...
- 纯css耍个透明正方体转一转
效果 效果图如下 实现思路 定义一个最外层的容器,用来控制显示的位置 定义一个父容器,用来设置元素被查看位置的视图,这里使用到CSS3的perspective 属性 定义子容器,设置为相对定位,利 ...
- charles 反向代理
本文参考:charles 反向代理 这个比较有逼格了: 正向代理和反向代理的区别: 正向代理:是代理客户端,为客户端收发请求,使真实客户端对服务器不可见:在客户这一端的,替客户收发请求(类似现在正常使 ...
- Java连载33-对象的创建和使用、内存分析
一.创建一个学生类 每个学生都有学号信息,但是每一个学生的学号都是不同的,所以要访问这个学号必须先创建对象,通过对象去访问学号信息,学号信息不能直接通过“类”去访问,所以这种成员变量又被称为“实例变量 ...
- Layer弹层(父子传值,兄弟传值)
需求:最外面列表界面点修改弹出LayerA界面,再点击LayerA界面中的选择地图坐标按钮弹出LayerB地图界面 这个过程涉及到的: 1:LayerA将坐标传给LayerB,LayerB在地图上显示 ...
- Java网络编程--Netty中的责任链
Netty中的责任链 设计模式 - 责任链模式 责任链模式(Chain of Responsibility Pattern)是一种是行为型设计模式,它为请求创建了一个处理对象的链.其链中每一个节点都看 ...