【django_restframework】序列化器字段校验规则

本文详细介绍了Django Rest Framework(DRF)中序列化器的字段校验规则,包括如何校验项目名的唯一性,项目名称必须包含特定文字,限制项目名称长度,以及多字段联合校验的实现方法。此外,还提到了to_internal_value和to_representation方法在序列化过程中的作用。
摘要由CSDN通过智能技术生成

今日状态:充充实实

打卡学习

星期一

星期二

星期三

星期四

星期五

星期六

星期日

成功

成功

成功

成功

成功

成功

成功

暂无

一、怎么校验创建的项目名是否是唯一的,当项目名name字段不唯一,怎么设置提示信息?

class ProjectsSerializer(serializers.Serializer):
    create_time=serializers.DateTimeField(label='创建时间',help_text='创建时间',
                                          format='%Y年%m月%d日 %H时%M分%S秒',read_only=True)
    update_time = serializers.DateTimeField(label='更新时间', help_text='更新时间',
                                            format='%Y年%m月%d日 %H时%M分%S秒', read_only=True)
    name=serializers.CharField(label='项目名称',help_text='项目名词',
                               max_length=20,min_length=3,
                               error_messages={'min_length':'项目名称不能少于3位',
                                               'max_length':'项目名称不能大于20'},
                               validators=[UniqueValidator(queryset=Projects.objects.all(),message='项目名称不能重复')])

??tip1:校验规则

1、可以在序列化器字段上使用validators指定自定义校验规则
2、validators必须得为序列类型(一般为列表),在列表中可以添加多个校验规则
3、DRF框架自带UniqueValidator校验器,必须得使用queryset指定查询集对象,用于对该字段进行校验
4、Uniq

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值