gpt4 book ai didi

python - Flask 登录 - is_authenticated 和 is_anonymous 不反射(reflect)登录/注销

转载 作者:太空宇宙 更新时间:2023-11-03 17:29:56 27 4
gpt4 key购买 nike

我有一个 Flask 应用程序,最近在我的登录/退出表单中实现了 Flask-Login:

@account.route('/sign-in', methods=['POST', 'GET'])
def sign_in():
form = loginForm()
if form.validate_on_submit():
email = form.email.data
password = form.password.data

user = accounts.query.filter_by(email=email).first()

if user is not None and user.verifyPassword(password):
login_user(user)
return redirect(request.args.get('next') or url_for('main.index'))

return render_template('signIn.html', form=form)


@account.route('/sign-out', methods=['POST', 'GET'])
def sign_out():
logout_user()
return redirect(url_for('main.index'))

登录后,我怀疑 current_user.is_authenticated 为 True,current_user.is_anonymous 为 False,注销后我怀疑 current_user.is_authenticated 将为 False,然后 current_user.is_anonymous 将为 True。

但是,无论用户是否登录,current_user.is_authenticatedcurrent_user.is_anonymous 始终为 True。我认为 login_user()logout_user() 会更改这些值。

问题是什么?如何返回正确的值?谢谢。

最佳答案

问题就是这么简单。在使用 is_authenticatedis_anonymous 后可以使用括号,例如:

{% if current_user.is_authenticated() %}
User is authenticated
{% endif %}

def view():
if current_user.is_authenticated():
...

关于python - Flask 登录 - is_authenticated 和 is_anonymous 不反射(reflect)登录/注销,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32026205/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com