我试图创建一个登录表单,如果用户名为空,它将抛出一个错误。在
from flask import Flask, render_template
from flask_wtf import FlaskForm
from wtforms import StringField, PasswordField, BooleanField
from wtforms.validators import InputRequired, Email, length, ValidationError
app = Flask(__name__)
app.config['SECRET_KEY'] = 'This is a secret'
class LoginForm(FlaskForm):
username = StringField('username', validators=[InputRequired()])
password = PasswordField('password')
@app.route('/form', methods=['GET','POST'])
def form():
form=LoginForm()
return render_template('form.html', form=form)
if __name__== '__main__':
app.run(debug=True)
html代码如下:
^{pr2}$显然,for循环被跳过,当user字段为空时,单击submit按钮不会发生任何事情
假设表单将使用POST方法发送,则必须验证表单数据是否已提交。使用烧瓶wtf非常简单:
我邀请您阅读更多关于flask-wtf
您根本没有在
form
函数中验证表单。编辑函数并添加验证行。在验证之后,才发现错误。否则,模板中的form
变量将没有errors属性。应采取以下措施:另外,避免将表单命名为
form
,因为您已经命名了函数form
。您应该更改窗体的函数名或变量名。在我希望这有帮助。在
相关问题 更多 >
编程相关推荐