drf序列化器中的read_only和write_only选项 read_only read_only表示只能读,不能进行修改。例如定义序列化器时,id字段通常指定read_only=True。在序列化时,即对象转为字典、JSON字符串时,字典、JSON字符串包含着id字段。但是反序列化时,即JSON字符串、字典转换为对象时,在参数校验的时候,即使字典有id的键值对,校...
序列化器序列化器中定义的类属性字段,往往与模型类字段一一对应 label选项相当于 verbose_name; 定义的序列化器字段,默认既可以进行序列化输出,也可以进行反序列化输入 通用参数 read_only...=True 指定该字段只能进行序列化输出write_only=True 指定该字段只进行反序列化输入,但不进行序列化输出 required该...
fromrest_frameworkimportserializersfromapp01importmodelsclassBookSerializers(serializers.Serializer):# 不指定read_only与write_only则表示可以用来读也可以用来写name = serializers.CharField() price = serializers.CharField()# 指定read_only表示只用来读,也就是序列化publish_detail = serializers.DictField(read...
Ⅱ write_only-- 只写入不显示 ,默认False serializer.py自定义序列换器 -- publish字段(write_only=True) publish=serializers.CharField(max_length=32,validators=[check,],write_only=True)#write_only存值的时候必须存,取值的时候不显示 Ⅲ read_only-- 只显示不写入,默认False serializer.py自定义序列换器...
write_only=True表示只能写,不能读。例如定义序列化器时,password字段(还有短信验证码等)通常指定write_only=True。在序列化时,即对象转为字典、JSON字符串时,字典、JSON字符串不会包含着字段。但是反序列化时,即JSON字符串、字典转换为对象时,在参数校验的时候,校验通过,而且校验后的数据有password这个字段,并且能...
write_only:只写;只进行反序列化,不进行序列化 read_only:只读;只进行序列化,不进行反序列化 1,视图集额外动作 目的: 可以给视图集添加额外的动作(方法) 操作流程: 1, 子路由 from django.conf.urls import url from . import views urlpatterns = [ ...
read_only 表明该字段仅用于序列化输出,默认False write_only 表明该字段仅用于反序列化输入,默认False required 表明该字段在反序列化时必须输入,默认True default 序列化和反序列化时使用的默认值 allow_null 表明该字段是否允许传入None,默认False validators 该字段使用的验证器 error_messages 包含错误编号与错误信...
read_only表明该字段只进行序列化返回,write_only表明该字段只进行反序列化验证,如果不指定,表明该字段既进行序列化返回,也进行反序列化验证 验证单一字段需要定义validate_字段名的验证方法,接受的参数就是该字段对应的值,并且一定注意将验证后的数据进行返回。
上面的age字段已经设置的read_only=True,所以在反序列化-数据校验时不必传入,即使传了,也会忽略它的存在。 示例2:write_only参数 (注意对比设置之前和设置之后的效果) fromrest_frameworkimportserializersclassUser(object):"""用户类"""def__init__(self,name,age):self.name=name ...
write_only表明该字段仅用于反序列化输入。在序列化输出时忽略该字段。 1.2 外键的用法 前端传递的数据如下所示 data = { 'book_id':1, 'name': '靖哥哥', 'password': '123456abc' } 1. 2. 3. 4. 5. 定义的序列化为 from rest_framework import serializers ...