首页 > 解决方案 > 编辑数据后出现错误 django“MultiValueDictKeyError at /employeeUpdate/'id'”

问题描述

编辑数据后出现错误 django “MultiValueDictKeyError at /employeeUpdate/'id'”。这是我在views.py中的代码

def employeeUpdate(request):
    id = request.POST['id']
    emp_username = request.POST['emp_username']
    emp_password = request.POST['emp_password']
    emp_identification_code = request.POST['emp_identification_code']
    content = employee.objects.get(pk = id)
    content.emp_username = emp_username
    content.emp_password = emp_password
    content.emp_identification_code = emp_identification_code

    if(employee.objects.filter(emp_username=emp_username)):
        messages.success(request, 'Username already exists')
        return redirect("/employeeUpdate")
    elif(employee.objects.filter(emp_identification_code=emp_identification_code)):
        messages.success(request, 'Identification already exists')
        return redirect("/employeeUpdate")
    else:
        content.save()
        messages.success(request, 'Update already !!!')
        return redirect("/employeeBoard")

标签: pythonhtmlcssdjangoweb-applications

解决方案


您正在尝试访问request.POST['id']不存在的内容。如果字典不存在,您可以尝试从字典中访问默认值

id =request.POST.get('id', default_value)

如果您想访问id当前用户,那么您可以尝试

id = request.user.id

推荐阅读