Tam*_*pta 5 python flask flask-sqlalchemy flask-login
在我的Flask-SQLAlchemy Web 应用程序中,我实现了Flask-Login用于用户身份验证和授权。现在我正在构建一个管理部分,管理员用户可以在其中添加、编辑或删除任何用户并查看用户列表。因此,在删除任何用户之前,我想知道该用户当前是否从某处登录到应用程序,或者只是与 Web 应用程序进行任何活动会话。我怎样才能做到这一点呢?或者这在应用程序级别是否可能?
[注意:如您所见,这不是关于 current_user.is_authenticated]
您必须自己实现此功能,因为没有办法使用flask-login.
我可以想到多种方法来做到这一点,但最快的可能就是跟踪用户上次访问您的网站的时间。然后,您可以设置一个合理的值timeout,如果用户在过去 30 分钟内(或您认为合适的时间)没有执行任何操作,则假定用户未登录
例如:
@app.before_request
def update_last_active():
current_user.last_active = datetime.utcnow()
db.session.commit()
Run Code Online (Sandbox Code Playgroud)
User.last_active每次用户向您的服务器发送请求时,这都会更新。