当前位置: 首页> 汽车> 新车 > 苏州模板建站平台_求2021没封的良心网址_电商线上推广渠道_网络营销策划的主要特点

苏州模板建站平台_求2021没封的良心网址_电商线上推广渠道_网络营销策划的主要特点

时间:2025/7/11 7:32:13来源:https://blog.csdn.net/weixin_43872912/article/details/143325028 浏览次数: 0次
苏州模板建站平台_求2021没封的良心网址_电商线上推广渠道_网络营销策划的主要特点

一、安装库包

pip install flask-wtf

二、使用表单类创建验证器类

首先代码展示:

#从框架中引入原始类
import wtforms
from wtforms.validators import Email, Length, EqualTo
from models import UserModel
from exts import redisclass RegistrationForm(wtforms.Form):email = wtforms.StringField(validators=[Email(message="邮箱格式错误")])captcha = wtforms.StringField(validators=[Length(min=4,max=4,message="验证码格式错误")])username = wtforms.StringField(validators=[Length(min=3,max=20,message="用户名格式错误")])password = wtforms.PasswordField(validators=[Length(min=6, max=20, message="密码格式错误")])password_confirm = wtforms.PasswordField(validators=[EqualTo("password")])#自定义验证def validate_email(self, field):email = field.datauser = UserModel.query.filter_by(email = email).first()if user:raise wtforms.ValidationError(message="该邮箱已被注册")def validate_captcha(self, field):captcha = field.datacode = redis.get("mail:" + self.email.data).decode()if code!=captcha:raise wtforms.ValidationError(message="验证码不正确")

这里首先是需要继承原始类(wtforms.Form)来创建子类验证器类(RegistrationForm)。
然后通过表单域类型来创建相关的表单元素,这里附带了相关的验证方式。
在这里插入图片描述
可以用于验证表单填写数据正确与否的验证方法:
在这里插入图片描述
还可以通过自定义来创建验证方式:
validation_表单元素名:这里的表单元素名是前端给后端传递的元素名,需要匹配。
其中传入的self是子类验证器类的self对象,里面包含了所定义的数据,可以通过它来访问除了email之外的其他元素数据。

    #自定义验证def validate_email(self, field):email = field.datauser = UserModel.query.filter_by(email = email).first()if user:raise wtforms.ValidationError(message="该邮箱已被注册")

三、验证器的使用

导入验证器类

from .form import RegistrationForm

使用验证器类去验证表单元素填写是否正确

#这里输入对象需要跟验证器类书里面的数据名一一对应,否则无法对应上
form = RegistrationForm(request.form)
#如果验证没有问题
if form.validate():# 1. 创建ORM对象user = UserModel(username=form.username.data, password=form.password.data, email=form.email.data, create_time=datetime.now());# 2. 将ORM对象添加到db.session中db.session.add(user);# 3. 将db.session中的改变同步到数据库中db.session.commit();return jsonify({"code":200,"message":"账号创建完成","data":None})
else:return form.errors
关键字:苏州模板建站平台_求2021没封的良心网址_电商线上推广渠道_网络营销策划的主要特点

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: