我一直在为我的网站处理 flask 验证页面,但由于某种原因,我的错误处理不起作用
这是我的app.py
@app.route('/login', methods=['GET', 'POST'])
def login():
form = LoginForm()
if form.validate_on_submit():
user = User.query.filter_by(username=form.username.data).first()
if user:
if bcrypt.check_password_hash(user.password, form.password.data):
login_user(user)
return redirect(url_for('dashboard'))
if user is None:
print("Invalid Credentials")
return render_template('login.html', form=form)
有人知道为什么会这样吗
if user is None:
print("Invalid Credit")
是不是错了?
1条答案
按热度按时间gwbalxhn1#
您的语法“If User is None:”永远不会触发,因为如果User为None,您将永远不会在上面的条件语句“If User:”中。
如果您的目标是为错误的密码创建操作,则在if bcrypt.check_password_hash之后需要一个Else语句。在条件语句“if user”的相反位置添加另一个Else语句,以确定用户名是否存在于数据库中。