BooleanField | 布尔有效类型 | BooleanField() |
NullBooleanField | 布尔有效类型,但同时也接受 None 类型 | NullBooleanField() |
CharField | 文本字符串有效类型,可以检测验证字符串的长度是否符合 maxlength 和 mix_length 等配置 | CharField(max_length=None, min_length=None, allow_blank=False, trim_whitespace=True) |
EmailField | 文本字符串有效类型,并验证文本是否符合邮件格式 | EmailField(max_length=None, min_length=None, allow_blank=False) |
RegexField | 文本字符串有效类型,并验证字符串是否匹配强制参数 regex 所指定的正则表达式 | RegexField(regex, max_length=None, min_length=None, allow_blank=False) |
SlugField | 文本字符串有效类型,并验证字符串是否匹配正则表达式:[a-zA-Z0-9-]+ | SlugField(maxlength=50, min_length=None, allow_blank=False) 正则字段,验证正则模式 [a-zA-Z0-9-]+ |
URLField | 文本字符串有效类型,并验证字符串是否符合 URL 规则:http:///<path> | URLField(max_length=200, min_length=None, allow_blank=False) |
UUIDField | UUID字符串有效类型,指定 UUID 的表示类型 | UUIDField(format=‘hex_verbose’) [‘hex_verbose’, ‘hex’, ‘int’,‘urn’ ] |
FilePathField | 文本字符串有效类型,选择仅限于文件系统上某个目录中的文件名 | FilePathField(path=None[, match=None, recursive=False, max_length=100, **options]) |
IPAddressField | 文本字符串有效类型,并确保输入为有效IPv4或IPv6字符串的字段 | IPAddressField(protocol=‘both’, unpack_ipv4=False, **options) |
IntegerField | 整数数字有效类型 | IntegerField(max_value=None, min_value=None) |
FloatField | 浮点数字有效类型 | FloatField(max_value=None, min_value=None) |
DecimalField | 十进制有效类型 | DecimalField(max_digits, decimal_places, coerce_to_string=None, max_value=None, min_value=None) [max_digits: 最多位数,decimal_palces: 小数点位置] |
DateTimeField | 日期和时间表示 | DateTimeField(format=api_settings.DATETIME_FORMAT, input_formats=None) |
DateField | 日期表示 | DateField(format=api_settings.DATE_FORMAT, input_formats=None) |
TimeField | 时间表示 | TimeField(format=api_settings.TIME_FORMAT, input_formats=None) |
DurationField | 持续时间表示 | DurationField() |
ChoiceField | 可以接受一组有限选择中的值的字段 | ChoiceField(choices) choices与Django的用法相同 |
MultipleChoiceField | 一个可以接受一组空、一个、多个值的字段 | MultipleChoiceField(choices) |
FileField | 文件表示。执行 Django 的标准 FileField 验证 | FileField(max_length=None, allow_empty_file=False, use_url=UPLOADED_FILES_USE_URL) |
ImageField | 图像表示。验证上传的文件内容是否与已知图像格式匹配 | ImageField(max_length=None, allow_empty_file=False, use_url=UPLOADED_FILES_USE_URL) |
ListField | 验证对象列表的字段类 | ListField(child=, min_length=None, max_length=None) |
DictField | 验证对象字典的字段类 | DictField(child=) |
HStoreField | DictField 与 Django 的 postgres 兼容的预配置字典类型 | HStoreField(child=<A_FIELD_INSTANCE>) |
JSONField | 用于验证传入的数据结构是否包含有效的 JSON数据 | JSONField(binary=True) |
ReadOnlyField | 仅返回该字段的值而无需修改 | ReadOnlyField() |
HiddenField | 不基于用户输入获取值,而是从默认值或可调用对象获取其值 | HiddenField() |
ModelField | 可以绑定到任意模型字段的通用字段 | ModelField(model_field=) |
SerializerMethodField | 只读字段, 通过在附加的序列化器类上调用一个方法来获取值, 可以用于将任何类型的数据添加到对象的序列化表示中,要调用序列化器上的方法名称。如果不包含,则默认为 get_<field_name>,参数引用的序列化器方法应该接受一个参数 (除了 self ),这是被序列化的对象。它应该返回您想要包含在对象的序列化表示中的任何内容 | SerializerMethodField(method_name=None) |