class NumberForm(BaseForm):
querynumber = forms.CharField(error_messages={'required':u'请输入手机号'})
def clean_querynumber(self):
number = self.cleaned_data.get('querynumber')
re_number = r'^1(3|5|7|8)[0-9]{9}$'
if len(number) >11 or len(number)<11 :
raise forms.ValidationError(u'手机号码长度为11位')
if not re.match(re_number,number):
raise forms.ValidationError(u'请输入合法手机号')
return number
- 在上面的代码中,如果自定义了forms.CharField(min_length=11,max_length=11)的话,若输入长度不为11位时,会抛出默认的异常提示。
- 若想自定义输入数据的长度提示,那么就需要取消设置的长度属性,才能执行def clean()方法中自定义的长度提示。 3.重点,在自定义验证数据时,一定要return,否则views是拿不到数据
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步