1,DRF框架?
Django REST framework 框架是一个用于构建Web API 的强大而又灵活的工具。通常简称为DRF框架 或 REST framework。
Django REST framework 可以帮助我们大大提高REST API 的开发速度,目的就是简化代码
2,序列化和反序列化
序列化:将程序中的一个数据结构类型转换为其他格式(字典、JSON、XML等),例 如 Django中的模型类对象转换为字典或JSON字符串,这个转换过程我们称为序列化。
反序列化:将其他格式(字典、JSON、XML等)转换为程序中的数据,例如将JSON字符串或字典转换保存为Django中的模型类对象,这个过程我们称为反序列化
序列化(侠义):将对象转为字典,json
反序列化(侠义):将字典,json转换为对象,json
3,Django REST framework 的使用:
1,下载安装:pip install djangorestframework
2,settings中进行注册 INSTALL_APPS ‘rest_framework’
3, DRF 框架序列化:只能将对象转换为字典,不能转换为json
4,DRF框架反序列化:数据校验,数据保存(新增和更新)
4,使用序列化器必须先定义序列化器:
序列化器的定义:
class <序列化器类名> (serializer.Serailizers):
字段 = serializers.字段类型(参数)
5,序列化功能:
1,创建序列化器类对象 serializer = 类名(user) (把对象放入类中)
2,获取序列化后的数据 res = serializers.data() print(res)
6,反序列化功能:
1,创建序列化器对象 serializer = 类名(data={xx}) 把前端传入的字典放入其中
2,进行参数校验 serializer.is_valid 返回true 或 false 代表校验成功和失败
3,获取校验失败的错误信息:serializers.errors 如果成功返回的是空字典
4,获取校验后的数据:serializers.validated_data 返回的是校验成功后的有序字典orderdict
7,序列化器使用的总结:
1,无论是序列化还是反序列化都需要创建序列化器对象
serializers = UserSerializer(instance = none,data={})
序列化时,将序列化对象传给intsance
反序列化时,将字典传给data
8,序列化器类的通用参数:
reade_only (该字段只在序列化时使用设为true)
write_only (该字段只在序列化时使用设为true)
read_only 和 write_only 不指定时为false ,表示序列化和反序列化时都使用
required 只争对反序列化时使用,默认为true,代表反序列化时必须传入该字段参数,
default 设置序列化或反序列化时的默认值
max_length和min_length:设置反序列化时的最大长度和最小长度
max_value和min_value:设置反序列化时的最大值和最小值
原文:https://www.cnblogs.com/wjun0/p/11723635.html