python - 如何获取当前登录 Flask-Login 的用户列表?

标签 python flask flask-sqlalchemy flask-login

在我的 Flask-SQLAlchemy 网络应用程序中,我实现了 Flask-Login 用于用户身份验证和授权。现在我正在构建一个管理部分,管理员用户可以在其中添加、编辑或删除任何用户并查看用户列表。因此,在删除任何用户之前,我想知道该用户当前是从某处登录到应用程序还是只是与 Web 应用程序进行任何事件 session 。我怎么能帮凶呢?或者这在应用程序级别甚至可能吗?

[注意:如您所见,这不是关于 current_user.is_authenticated]

最佳答案

您必须自己实现此功能,因为无法使用 flask-login 原生实现此功能。

我可以想出无数种方法来做到这一点,但最快的可能就是跟踪用户上次访问您网站的时间。然后您可以设置一个合理的超时,如果用户在过去 30 分钟内(或者您认为合适的时间)没有做任何事情,您就假设用户没有登录

例如:

@app.before_request
def update_last_active():
    current_user.last_active = datetime.utcnow()
    db.session.commit()

每当用户向您的服务器发送请求时,这将更新 User.last_active

关于python - 如何获取当前登录 Flask-Login 的用户列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58918154/

相关文章:

python - 安装Python到可移植的python

python - Python 3.7错误: Unsupported Pickle Protocol 5

python - 使用 fftconvolve 计算包裹的二维相关性

python - 如何使用 flask+uwsgi 服务 tensorflow 模型?

python - Flask-SQL 中没有 SQLAlchemy 模块

python - flask 中的 "TypeError: ' bool 值 ' object is not callable"

python - 如何使用 Langchain 获得更详细的结果来源

python - Flask 内部服务器错误 : How to handle request to server when posting form data to extract value from form correctly?

python - Flask - 获取点击的链接信息并显示在呈现的页面上

python - SQLAlchemy 使用多个表构建可选择的查询