Ошибка django «MultiValueDictKeyError в /employeeUpdate / ‘id’ » при редактировании данных

#python #html #css #django #web-applications

#python #HTML #css #django #веб-приложения

Вопрос:

Ошибка django «MultiValueDictKeyError в /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")
 

Ответ №1:

вы пытаетесь получить доступ request.POST['id'] , которого нет, не существует. Вы можете попытаться получить доступ к значению по умолчанию из словаря, если оно не существует, используя

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

если вы хотите получить доступ к id текущему пользователю, вы можете попробовать

 id = request.user.id