flask-login版本中没有reload_user函数,用户信息怎样确认?

考虑登录和未登录两种情况。


1 回答  ·  50 阅读  ·  0 收藏
  • 全部回答 1
  • 芝麻游戏助手
  • 芝麻游戏助手      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()

    • 评论
    • 分享