如何在flask-login中跟踪当前用户? [英] How to track the current user in flask-login?
问题描述
g object
我分配 flask.ext.login.current_user
to g object
@ pot.before_request
def load_users():
g.user = current_user.username
如果用户正确,但是,当我做注册或以错误的凭据登录
我得到这个错误
AttributeError :'AnonymousUserMixin'对象没有属性'username'
请让我知道我在哪里错了...
感谢你的回答@Joe和@pjnola,正如你所有的建议我提到 flask-login docs
我发现我们可以自定义匿名用户类,所以我为我定制要求,
匿名类
#!/ usr / bin / python
#flask-login匿名用户类$ b $ from flask.ext.login import AnonymousUserMixin
class匿名(AnonymousUserMixin):
def __init __(self):
self.username ='Guest'
类到 anonymous_user
login_ma nager.anonymous_user =匿名
如果是匿名请求,则可以获取用户名。
I m trying to use the current user in my view from flask-login. So i tried to g object
I m assigning flask.ext.login.current_user
to g object
@pot.before_request
def load_users():
g.user = current_user.username
It works if the user is correct. But when i do sign-up or login as with wrong credentials I get this error
AttributeError: 'AnonymousUserMixin' object has no attribute 'username'
Please enlight me where am i wrong...
Thanks for your answer @Joe and @pjnola, as you all suggested i referred flask-login docs
I found that we can customize the anonymous user class, so i customized for my requirement,
Anonymous class
#!/usr/bin/python
#flask-login anonymous user class
from flask.ext.login import AnonymousUserMixin
class Anonymous(AnonymousUserMixin):
def __init__(self):
self.username = 'Guest'
Then added this class to anonymous_user
login_manager.anonymous_user = Anonymous
From this it was able to fetch the username if it was anonymous request.
这篇关于如何在flask-login中跟踪当前用户?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!