2, fields 目的: 可以使用fields生成指定的字段 操作流程: 1, 序列化器 #1,定义书籍模型类序列化器classBookModelSerializer(serializers.ModelSerializer): mobile = serializers.CharField(max_length=11,min_length=11,label="手机号",write_only=True)classMeta: model = BookInfo#参考模型类生成字段# fields ...
trim_whitespace:去掉前后的空白#DateTimeField(format=api_settings.DATETIME_FORMAT)format:格式化成的样子#IntegerField(max_value=None, min_value=None)max_value :数字 min_value:数字### 通用参数---》所有字段类上都可以加read_only 表明该字段仅用于序列化输出,默认False write_only 表明该字段仅用于反序列...
fields=(需要为模型类中的那些字段生成),all表示所有字段 exclude=(不需要为模型类中的那些字段生成) extra_kwargs={字段名:选项参数}可以为生成的序列化器字段增加约束 depth=嵌套返回的层级 read_only_fields=(指明只参加序列化返回的字段) write_only_fields=(指明只参加反序列化验证的字段) 视图 两个基本类...
其中,write_only是extra_kwargs的一个选项,用于指定某个字段只能用于写入操作,而不能用于读取操作。这在一些敏感信息(如密码)的处理中非常有用,可以确保这些字段不会被意外地返回给客户端。 然而,DRF序列化程序在默认情况下不会返回extra_kwargs为write_only的字段的值。这是因为DRF的设计理念是尽量减少敏感...
fields = ['id'] class BookInfoModelSerializer(serializers.ModelSerializer): class Meta: model = BookInfo fields = '__all__' 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 1.保存1个人物信息 1.1 write_only字段用法
# write_only_fields=('id',) #弃用了,使用extra_kwargs extra_kwargs = { # 类似于这种形式name=serializers.CharField(max_length=16,min_length=4) 'price': {'write_only': True}, } # 其他使用一模一样 #不需要重写create和updata方法了 ...
# re_name=seializers.CharField(write_only=True)classMeta:model=models.Book fields=('name','price','publish','authors')#没有默认值的字段必须序列化,为其传值 # extra_kwargs 用来完成反序列化字段的 系统校验规则 extra_kwargs={'name':{'required':True,#设置name字段必填'min_length':1,'error...
write_only 表名该字段仅用于反序列化输出,默认False required 表名该字段在反序列化时必须输入,默认True default 反序列化时使用的默认值 allow_null 表明该字段是否允许传入None,默认False allow_blank 允许提交过来的数据为空字符串,默认False vaildators 该字段使用的验证器 ...
read_only 表明该字段仅用于序列化输出,默认False write_only 表明该字段仅用于反序列化输入,默认False required 表明该字段在反序列化时必须输入,默认True default 序列化和反序列化时使用的默认值 allow_null 表明该字段是否允许传入None,默认False validators 该字段使用的验证器 error_messages 包含错误编号与错误信...
fields中设置所有序列化与反序列化字段 extra_kwargs划分只序列化or反序列化字段 (重点!!) write_only:只反序列化 read_only:只序列化 自定义默认字段只序列化(read_only) 如果字段没设置write_only或者read_only,那么该字段可以序列化和反序列化 设置反序列化所需的系统校验、局部钩子、全局钩子 ...