首页
学习
活动
专区
圈层
工具
发布

Django Rest Framework 分页(上)

Django Rest Framework 序列化(下)

一、校验数据

序列化不仅可以做数据的返回,也可以对前端提交的数据进行校验

案例目录

<1>类方法校验

新建 validator.py 文件

在 serializer.py 文件中添加 UserGroupSerializer 类函数

上面的 TitleValidator 类封装了对 request.data 前端传来的数据的校验,title 相对应的是数据中的 key 为 value 的值。TitleValidator 实现了 call() 特殊方法,并把具体的验证逻辑封装到里边,是一个可直接调用的对象。而 self.base 则为具体的 title 对应的数据,进行处理。

<2>钩子方法

在定义钩子方法的时候,钩子函数是以 validate_字段名 的方法进行命名的。只有遵循这样的格式,在 Serializer 内部会对钩子函数的名字进行拆分并识别出来。在 validate_title 内部封装了对数据的校验操作,value 则为具体的值。

二、分页

分页有三种方式:

  • 普通分页:看第n页,每页显示m条数据;
  • 切割分页:在n个位置,向后查看m条数据;
  • 加密分页:这与普通分页方式相似,不过对 url 中的请求页码进行加密。

① 路由

<1> 主路由

<2> app 路由

② 视图

在 不使用 django rest framework 中的分页组件仍能达到目的。

下一篇
举报
领券