gpt4 book ai didi

python - 如何使用 Flask 检索 session 数据?

转载 作者:太空狗 更新时间:2023-10-29 18:29:03 25 4
gpt4 key购买 nike

我有 flask+wtforms 应用程序。我可以在 login() 中看到用户对象存储为

  if user:
if user.verify_password(form.password.data):
flash('You have been logged in')
user.logins += 1

db.session.add(History(user.uid))
db.session.commit()

session['user'] = user

现在我想检索用户

if 'user' in session:
User=session.get('user')
print User.nickname ###<< how to retrieve specific object member?

失败并显示如下消息:

Instance <User at 0x8e5a64c> is not bound to a Session; attribute refresh operation cannot proceed

最佳答案

很简单。如果你想检索一个特定的对象,只需在 session 中添加变量的名称,例如 session ['昵称']

您可以通过执行 session['nickname'] = nickname 以相同的方式设置变量。

在您的情况下,您可以将其更改为以下内容

if 'user' in session:
user = session['user']
print user

if 'nickname' in session:
nickname = session['nickname']
print nickname

这是我用于登录的函数的简化版本。

@app.route('/login', methods=['POST'])
def login():
"""Authenticate User"""
username = request.form['username'].strip()
nickname = request.form['nickname'].strip()
password = request.form['password']
try:
if Auth().VerifyLogin(username, password):
session['username'] = username
session['nickname'] = nickname
else:
# failed to login, do something.
except Exception as why:
app.logger.critical('.....')

关于python - 如何使用 Flask 检索 session 数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15591620/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com