考虑登录和未登录两种情况。
芝麻游戏助手 2021-04-13 11:07:32
@login_manager.user_loader def load_user(user_id): ... 加 user_loader 就是告诉 flask-login 你的登录用户将从 load_user() 函数中取得. 我们分别以未登录和已登录两种情况来分析。 首先你要提供一个 User 接口, 像这样的 class MyUser(object): is_authenticated = False is_active = True is_anonymous = True def get_id(): return None 假设当前用户命名为 currUser. 未登录 这时候 currUser.is_anonymous 为 True, 表示匿名用户. 当用户提交帐号密码进行登录时, 你得从数据库中验证它, 通过后 currUser.is_authenticated 变成 True currUser.is_anonymous 变成 False currUser.get_id() 返回该用户的 登录帐号 然后调用 flask_login.login_user(currUser) 告诉 flask-login 该用户已经登录成功. 已登录 用 flask_login.current_user 变量引用当前用户, 退出登录时调用 flask_login.logout_user()