2018-09-27-Python全栈开发-day60-django序列化-part2

Form组建的简单扩展

1.form的验证流程

  clean_fields

  用户输入的字段,首先通过正则表达式的验证,当验证成功之后,将字段和值放入一个字典中,如果后面还有clean_字段名这样的方法,则会继续执行,如果clean_字段名方法执行成功,字典中的值会进行更新。

  

 def clean_user(self):
        v = self.cleaned_data['user']
        print(v)
        print(models.Book.objects.filter(name=v).values_list('price'))
        if models.Book.objects.filter(name=str(v)).count():
            # 整体错了
            # 自己详细错误信息
            print('bbb')
            raise ValidationError('用户名已存在')
        return v



clean_user对应user字段,在这里可以自定义函数,或者自定义功能进行再次验证或者做某些事,最后将修改后的字典返回即可

猜你喜欢

转载自www.cnblogs.com/hai125698/p/9716172.html
今日推荐