DRF框架 定义序列化器ModelSerializer的使用
序列化器的作用:
进行数据的校验
对数据对象进行转换
serializer不是只能为数据库模型类定义,也可以为非数据库模型类的数据定义。
序列化器:将查询的后端数据转换成JSON类型传递前端
反序列化器:获取前端JSON数据,验证数据后保存或更新数据,得到新的数据对象,并保存到数据库中。
创建Serializer对象
定义好Serializer类后,就可以创建Serializer对象了。
Serializer的构造方法为:
Serializer(instance=None, data=empty, **kwarg)
说明:
1)用于序列化时,将模型类对象传入instance参数
2)用于反序列化时,将要被反序列化的数据传入data参数
3)除了instance和data参数外,在构造Serializer对象时,还可通过context参数额外添加数据,如
serializer = AccountSerializer(account, context={'request': request})
通过context参数附加的数据,可以通过Serializer对象的context属性获取。
模型类序列化器ModelSerializer
DRF框架封装了序列化和反序列化,方便调用序列化器的类。
ModelSerializer与常规的Serializer相同,但提供了:
- 基于模型类自动生成一系列字段
- 基于模型类自动为Serializer生成validators,比如unique_together
- 包含默认的create()和update()的实现
Django REST framework 框架是一个用于构建Web API 的强大而又灵活的工具。
通常简称为DRF框架 或 REST framework。
DRF框架是建立在Django框架基础之上,由Tom Christie大牛二次开发的开源项目。
特点:
1- 提供了定义序列化器Serializer的方法,可以快速根据Django ORM或者其他库自动序列化和反序列化
2- 提供了丰富的类视图,Mixin扩展类,简化视图的编写
3- 丰富的定制层级:函数视图、类视图、视图集合、到自动生成API,满足各种需要
4- 多种身份认证和权限认证方式的支持
5-内置了限流系统
6- 直观的API Web界面
7-可扩展性,插件丰富
官方文档
https://www.django-rest-framework.org/
推荐阅读
-
zf框架的校验器使用使用示例(自定义校验器和校验器链)
-
写写Django中DRF框架概述以及序列化器对象serializer的构造方法以及使用
-
039、DRF框架的Serializer序列化器
-
DRF框架之Serializer序列化器的反序列化操作
-
DRF框架 定义序列化器ModelSerializer的使用
-
Django(46)drf序列化类的使用(ModelSerializer)
-
DRF框架-模型类序列化器ModelSerializer
-
Django RestFul framework Serializer序列化器的使用(定义)
-
drf序列化器serializer的具体使用
-
zf框架的校验器使用使用示例(自定义校验器和校验器链)_PHP教程