反序列化基本参数校验

序列化器基本参数

序列化器的创建: 通过data传入字典数据

 Serializer(instance=None, data=empty, **kwarg)

通过is_valid方法校验参数合法性

is_valid()方法:
    校验参数是否合法,校验通过返回True,否则返回False
    传递参数:is_valid(raise_exception=True)
    验证失败时会抛出异常serializers.ValidationError
    响应时对应的状态码:400
    errors属性: 获取校验出错信息,字典类型。
    validated_data属性: 校验通过得到的对象,类型为OrderedDict
案例

案例一:验证出错

 my_dict = {'create_date':'2018'}
 serializer = DepartmentSerializer(data=my_dict)
 serializer.is_valid()      # 验证不通过
 # False
 serializer.errors
 # {'create_date': [ErrorDetail(string='Date has wrong format. 
 #   Use one of these formats instead: YYYY[-MM[-DD]].', code='invalid')], 
 # 'name': [ErrorDetail(string='This field is required.', code='required')]}

案例二:验证通过

 my_dict = {'name':'研发部33', 'create_date':'2018-1-1'}
 serializer = DepartmentSerializer(data=my_dict)
 serializer.is_valid()  # 验证通过
 # True

 serializer.validated_data
 # OrderedDict([('name', '研发部33'), 
 #     ('create_date', datetime.date(2018, 1, 1))])
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值