Django异常类型:多值DictKeyError
我正在使用Django 1.6。我正在经历这个错误Django异常类型:多值DictKeyError,django,Django,我正在使用Django 1.6。我正在经历这个错误 **Exception Type**: MultiValueDictKeyError **Exception Value**:"'chat_room_id'" 在代码中提到的部分。有人能帮我解决这个问题吗 @login_required def join(request): ''' Expects the following POST parameters: chat_room_id message '
**Exception Type**: MultiValueDictKeyError
**Exception Value**:"'chat_room_id'"
在代码中提到的部分。有人能帮我解决这个问题吗
@login_required
def join(request):
'''
Expects the following POST parameters:
chat_room_id
message
'''
p = request.POST
r = Room.objects.get(id=int(p['chat_room_id']))
r.join(request.user)
return HttpResponse('')
似乎
聊天室\u id
不在p
中<代码>请求。POST是一个多值DICT
。它有一个.get()
方法来获取值。将其与默认值一起使用,这样,如果该键没有值,则可以使用默认值。例如
@login_required
def join(request):
'''
Expects the following POST parameters:
chat_room_id
message
'''
p = request.POST
room_id = p.get('chat_room_id', False)
# ------------------------------^ Returns False if `chat_room_id` is not in `p`
if room_id:
r = Room.objects.get(id=int(room_id))
r.join(request.user)
else:
# throw error
return HttpResponse('')
p['chat\u room\u id']
的值是多少?请打印p
并显示输出。我在尝试打印p时仍然收到相同的错误。我是Django的新手,所以我无法纠正它。请检查我的答案。如果仍然不起作用,打印请求。发布
并更新您的问题。