[英]Flask_login problem with user_loader() function giving me None
[英]I code two user_loader on different place but only first one works in flask_login?
当我使用user / login.py时,我在admin / login.py中的第一个user_loader和在user / login.py中的第二个user_loader但在admin / login中的user_loader被调用了; 这样的错误: 在此处输入图片描述
也许其他地方发生了一些问题,但是is_authenticated的值是True。我猜我以错误的方式使用了user_load。 救命! 提前致谢。
我在flask中使用了2个LoginManagers,一个用作用户,另一个用作administrater,但是我发现只有一个可以使用,因此我重写login_required引用了此anwser
我的用户模型是这样的。
class User(UserMixin):
def __init__(self, username, role):
self.username = username
self.id = self.get_id()
self.urole = role
@property
def password(self):
raise AttributeError('password is not a readable attribute')
@password.setter
def password(self, password):
self.password_hash = generate_password_hash(password)
admin_collection.insert_one({'username':self.username,'password':self.password_hash,'id':self.id})
def verify_password(self, password):
password_hash = self.get_password_hash()
if password_hash is None:
return False
return check_password_hash(password_hash, password)
def get_password_hash(self):
pswd = admin_collection.find_one({'username':self.username})
return pswd['password'] if pswd else None
def get_id(self):
find_id = admin_collection.find_one({'username':self.username})
return find_id['id']
def get_role(self):
return self.urole
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.