当前位置: 首页 > news >正文

day44-Django RestFramework(drf)下

1.5 Django RestFramework(下)

drf 内置了很多便捷的功能,在接下来的课程中会给大家依次讲解下面的内容:

  • 快速上手
  • 请求的封装
  • 版本管理
  • 认证
  • 权限
  • 限流
  • 序列化
  • 视图
  • 条件搜索
  • 分页
  • 路由
  • 解析器

10. 分页

在查看数据列表的API中,如果 数据量 比较大,肯定不能把所有的数据都展示给用户,而需要通过分页展示。

在drf中为我们提供了一些分页先关类:

BasePagination,分页基类
PageNumberPagination(BasePagination)	支持 /accounts/?page=4&page_size=100 格式的分页
LimitOffsetPagination(BasePagination)	支持 ?offset=100&limit=10 格式的分页
CursorPagination(BasePagination)		支持 上一下 & 下一页 格式的分页(不常用)
10.1 APIView视图

如果编写视图是直接继承APIView,那么在使用分页时,就必须自己手动 实例化 和 调用相关方法。

1.PageNumberPagination

在这里插入图片描述

在这里插入图片描述

2.LimitOffsetPagination

在这里插入图片描述

3.CursorPagination

在这里插入图片描述

10.2 GenericAPIView派生类

如果是使用 ListModelMixinModelViewSet ,则只需要配置相关类即可,内部会自动执行相关分页的方法。

1.PageNumberPagination

在这里插入图片描述

2.LimitOffsetPagination

在这里插入图片描述

3.CursorPagination

在这里插入图片描述

11. 路由

在之前进行drf开发时,对于路由我们一般进行两种配置:

  • 视图继承APIView

    from django.urls import path
    from app01 import viewsurlpatterns = [path('api/users/', views.UserView.as_view()),
    ]
    
  • 视图继承 ViewSetMixin(GenericViewSet、ModelViewSet)

相关文章:

  • 大数据Hadoop之——安装部署hadoop
  • INA226 电流计 功率计电路图转PCB制作
  • WPF学习笔记(12)下拉框控件ComboBox与数据模板
  • 矩阵的定义和运算 线性代数
  • NoSQL与Redis、HBase、分布式系统详解
  • 青少年编程与数学 02-022 专业应用软件简介 01 设计与创意类软件:Adobe Creative Cloud
  • 解锁云原生微服务架构:搭建与部署实战全攻略
  • 6-创建和查询
  • 接口自动化测试(Python+pytest+PyMySQL+Jenkins)
  • AlpineLinux安装部署elasticsearch
  • 如何搭建基于RK3588的边缘服务器集群?支持12个RK3588云手机
  • solidworks2021导出urdf
  • [Android]ANR的线程
  • 理解WebGL中的顶点着色器和片元着色器
  • git lfs 提交大文件
  • 解决git clone报错:fatal unable to access xxx. Could not resolve host github.com
  • 【PaddleOCR】PaddlePaddle 3.0环境安装,及PaddleOCR3.0 快速入门使用
  • MCP -1(待补充)
  • <4>_Linux进程概念
  • 同步日志系统深度解析【链式调用】【宏定义】【固定缓冲区】【线程局部存储】【RAII】