由于某些原因,我的wtf表单似乎无法验证。当表单使用已经存在的用户名完成并按下submit时,页面会保持在原来的位置,并且不会引发验证错误,尽管它在代码中。具有新用户名的用户可以很好地添加到数据库中。在
希望有人可以将代码复制/粘贴到文本编辑器中并使其运行:
这是表格:class RegistrationForm(FlaskForm):
username = StringField('Username', validators = [DataRequired()])
password = PasswordField('Password', validators = [DataRequired()])
submit = SubmitField('Register')
def validate_username(self,field):
if UserRegistration.query.filter_by(username=field.data).first():
raise ValidationError('Your username has been registered already!')
以下是模型类:
^{pr2}$
以下是视图:
^{3}$
以下是表单所在的html文档:{% extends 'base.html' %}
{% block content %}
Registration Form
{{form.hidden_tag()}}
{{form.username.label()}}
{{form.username(class='form-control form-text text-muted')}}
{{form.password.label()}}
{{form.password(class='form-control form-text text-muted')}}
{{form.submit(class="btn btn-primary")}}
{% endblock %}