您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

如何在Flask中使用g.user global

如何在Flask中使用g.user global

g是本地线程,并且是每个请求的内容(请参阅代理说明)。该session是还当地一个线程,但在认情况下被保存到一个MAC-签署cookie,并发送给客户端。

你遇到的问题是,session每个请求都将重建该请求(因为该请求已发送给客户端,并且客户端将其发送回给我们),而设置的数据g仅在此请求的生命周期内可用。

在最简单的事情(注意simple != secure-如果你需要确保看看烧瓶登录)是简单地将用户的ID添加到会话,并加载每个请求的用户

@app.before_request
def load_user():
    if session["user_id"]:
        user = User.query.filter_by(username=session["user_id"]).first()
    else:
        user = {"name": "Guest"}  # Make it better, use an anonymous User instead

    g.user = user
Python 2022/1/1 18:24:46 有162人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶