chan

朝生暮死不足笑 但悲百年不足道

Django中的clean_data及对应的自定义字段验证方法


在 Django 表单中,cleaned_data 是一个属性,它用于存储通过表单验证后清理的数据。这里的 clean_mobile_phone 是一个字段清理方法,用于对 mobile_phone 字段的输入数据进行自定义验证。

详细解释
cleaned_data:

cleaned_data 是 Django 表单的一个字典属性,它在所有字段的验证通过后才会被填充。
当表单验证成功后,所有字段的数据都会存储在 cleaned_data 中,可以通过 self.cleaned_data[‘字段名’] 访问对应的字段值。
例如,这里通过 self.cleaned_data[‘mobile_phone’] 获取用户输入的手机号码。
clean_mobile_phone 方法:

clean_mobile_phone 是一个自定义的字段清理方法。Django 表单在验证过程中会自动调用命名为 clean_ 的方法(这里是 clean_mobile_phone)对该字段的数据进行进一步处理和验证。
在这个方法中,首先从 cleaned_data 中获取 mobile_phone 字段的值。
然后,通过 self.request.GET.get(‘tpl’) 获取请求中的 tpl 参数,并检查其是否对应有效的短信模板 ID。
如果没有找到有效的模板 ID,clean_mobile_phone 方法会通过 raise ValidationError(“短信模板错误”) 抛出一个错误,终止该字段的验证。

评论
还没有评论
    发表评论 说点什么