zl程序教程

您现在的位置是:首页 >  其他

当前栏目

序列化类的字段和参数

2023-03-20 15:24:06 时间

序列化类的字段和参数

1.需要了解的字段类以及其参数

1.布尔字段 BooleanField	      
BooleanField() # 不用传参数,自带布尔值
2.无布尔值字段 NullBooleanField	  
NullBooleanField() # 不用传参数,自带无布尔值
4.邮箱字段 EmailField	
EmailField(max_length=None, min_length=None, allow_blank=False)
5.正则字段 RegexField	
RegexField(regex, max_length=None, min_length=None, allow_blank=False)
6.正则字段 SlugField	
SlugField(max_length=50, min_length=None, allow_blank=False) # 验证正则模式 [a-zA-Z0-9-]+
7.路由字段 URLField	
URLField(max_length=200, min_length=None, allow_blank=False)
8.UUIDField # UUID是通用唯一识别码(Universally Unique Identifier)	
UUIDField(format=’hex_verbose’) 
9.API地址字段 IPAddressField	
IPAddressField(protocol=’both’, unpack_ipv4=False, **options)
10.小数字段 FloatField	
FloatField(max_value=None, min_value=None)
11.年月日字段 DateField	
DateField(format=api_settings.DATE_FORMAT, input_formats=None)
12.时分秒 TimeField	
TimeField(format=api_settings.TIME_FORMAT, input_formats=None)
13.持续时间字段 DurationField	
DurationField()
14.选择字段 ChoiceField	
ChoiceField(choices) choices与Django的用法相同
15.多选字段 MultipleChoiceField	
MultipleChoiceField(choices)
16.文件字段 FileField	
FileField(max_length=None, allow_empty_file=False, use_url=UPLOADED_FILES_USE_URL)
17.图像字段 ImageField	
ImageField(max_length=None, allow_empty_file=False, use_url=UPLOADED_FILES_USE_URL)

2.必须掌握的字段类以及参数

前端传进来的是什么在序列化类里面就用什么字段
后端在表模型写的方法是什么在序列化类里面就用什么字段
重点学习的两个字段 列表字段ListField 字典字段DictField
没有参数 在定制字段的时候用到具体使用方法请见@模型表中定制方法,如下嘿嘿嘿!!

1.CharField	
CharField(max_length=None, min_length=None, allow_blank=False, trim_whitespace=True)
2.IntegerField	
IntegerField(max_value=None, min_value=None)
3.DecimalField	
DecimalField(max_digits, decimal_places, coerce_to_string=None, max_value=None, min_value=None) 
# max_digits: 最多位数 decimal_palces: 小数点位置
4.DateTimeField	DateTimeField(format=api_settings.DATETIME_FORMAT, input_formats=None)

序列化器需要用到的两个重要字段和两个参数

  1. ListField当需要接收一个 list 的时候使用
  2. DictField当传入的数据是 dict 时使用
  1. read_only 表明该字段仅用于序列化输出,默认False
  2. write_only 表明该字段仅用于反序列化输入,默认False