django表单提交,django验证码实现
1.从django引入表单模块在views.py中导入表单,特别注意表单,添加s
2,然后创建一个继承django的表单类Biaodan (forms.form) 3360的类。
3.编写自定义表单验证规则。表单模块提供了许多内置的验证字段,如字符串的CharFiled、邮箱的EmailFiled、url地址的URlFiled、数字字段、ip字段等。我们还可以在每个字段中设置验证条件,例如,字段是否可以为空。添加验证条件required=True,表示不能为空,max_length=5,字符数,min_length最小字符数,error_messages={},自定义错误消息,字典形式,关键是验证条件的字段,错误消息可以自由书写。邮箱有一个无效的错误消息字段。用于写邮箱验证错误后的提示信息。其实错误信息可以自己写。模块中有一个默认的验证错误返回信息,但它是英文的。为了更好的用户体验,建议自己定义。
例如,我们定义了用户的认证。
Django框架没有手机号的验证规则,可以自定义添加。
#编写自定义验证规则defmobile_check(value):
Res=re.match (1 [356789] d {9} $ ,value)如果notres3360 #用户定义的规则通过而没有引发异常。
RaiseValidationError(“手机号码格式错误”)classbd(forms。表格):
手机=表单。夏菲尔德(
Required=True,#使用自定义验证规则
验证器=[mobile_check],
Error _ messages={ 必填 3360 手机号码必填,
},
)
用户=表单。夏菲尔德(
必需=真,
最大长度=4,
最小长度=2,
Error _ messages={ 必填 3360 不能为空, max _ length 3360 最多不能超过4个字符,
最小长度 : 最小长度为2
}
4.验证类写好之后,我们就可以写逻辑处理模块了。
deftest(请求):
ifrequest.method==POST:
F=bd(请求。POST)#使用bd类验证请求的大信息。
Iff.is_valid():#is_valid()返回验证是否通过的布尔值。
# print(f . cleaned _ data)# cleaned _ data以字典形式返回验证后的所有数据。
#您可以执行数据库存储操作。
returnJsonResponse(f . cleaned _ data)
else:
Render (request, kanyun/test.html ,{info 3360f.errors}) # errors获取验证错误信息
elifrequest.method==GET:
Render (request, kanyun/test.html )数据库可以由验证过的cleaned_data数据存储。
登录的话可以查询数据库比对,成功后可以进行跳转操作。
前端代码,前端输入框要有接收错误信息的标签模块来接收错误信息。
!DOCTYPEhtml
超文本标记语言
头
元字符集=UTF八国集团
标题标题/标题
/头
身体
the h1From模块使用方法/h1验证表单模块是否访问了页面
for action= { % URL kanyun : test % } method= post
{%csrf_token%}
差异
用户名: input type= text name= mobile /
span{{info.user}}/span
/div
差异
密码: input Type= text name= user /
span{{info.pwd}}/span
/div
Buttontype=提交提交/按钮
/表单
H1自动创建表单/h1
/body
/html
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。