‘WSGIRequest’对象不可下标访问

13 投票
1 回答
13499 浏览
提问于 2025-04-16 17:12

我在views.py文件中的这个函数里遇到了一个错误。这个错误让我很困惑,因为我不知道什么是'WSGIRequest',也不知道为什么它会给我带来问题。我知道我有一个叫"newUser"的变量,因为当我把那一行去掉时,print(request.POST)这一行就能正常输出它。

def AddNewUser(request):

a=AMI()
if(request.method == "POST"):
    print(request.POST)
    print(request["newUser"])
csrfContext = RequestContext(request)
return render_to_response("ac/AddNewUser.html", csrfContext)

我为什么会遇到这个错误呢?

1 个回答

24

这意味着 WSGIRequest 没有实现 __getitem__ 方法。你试图把 HttpRequest 对象当成字典来用,但它其实不是。如果你想访问这个 newUser 变量,应该使用 POST 对象,因为它有类似字典的功能:

request.POST['newUser']

在这种情况下,查看 Django 的文档会很有帮助。

撰写回答