【问题标题】:Why does the name variable give a key error? [duplicate]为什么 name 变量会给出 key 错误? [复制]
【发布时间】:2021-11-18 10:23:26
【问题描述】:

这段代码给了我一个 KeyError: 'name', at if(name != session["name"])。如果需要,followers 是一个带有字符串键和列表项的字典。如果有人可以帮我解决这个问题,那就太好了。

    if(request.method == "GET"):
        try:
            return render_template("user.html", name=name, bio=accounts[name]["bio"], follower=len(followers[name]))
        except:
            return "incorrect username, <a href=/users>go back</a>."
    else:
        print(name)
        if(name != session["name"]):
            if(session["name"] not in followers[name]):
                followers[name].append(session["name"])
            else:
                followers[name].remove(session["name"])
        f = open("database_followers.json", "w")
        f.write(json.dumps(followers))
        return redirect(f'/users/{name}')```

【问题讨论】:

  • 你确定会话有一个名为“name”的键吗?
  • 您能提供打印(会话)的输出吗?用 print(session) 替换 print(name) 并尽可能分享。
  • 是的,这就是问题

标签: python flask


【解决方案1】:

我认为您需要检查变量 session 中的内容。它给出了错误,因为它在会话中找不到键“名称”。

【讨论】:

  • 谢谢,是我用错了键
猜你喜欢
  • 2023-03-31
  • 1970-01-01
  • 2020-12-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-02-16
相关资源
最近更新 更多