python - 编辑数据后出现错误 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")
解决方案
您正在尝试访问request.POST['id']
不存在的内容。如果字典不存在,您可以尝试从字典中访问默认值
id =request.POST.get('id', default_value)
如果您想访问id
当前用户,那么您可以尝试
id = request.user.id
推荐阅读
- python - 在 pytorch 中向自定义 LSTM 单元添加层和双向性
- ios - 试图枚举一个数组
- ios - 编写通用代码并在整个项目中使用它的最佳方法是什么
- android - 创建联系人详细信息的应用快捷方式
- azure-active-directory - 删除用户时,有什么方法可以从 IDP 调用 webapi
- vb.net - 响应:通过 RestSharp 在 Swagger 中未经授权
- php - 即使我的 API 正在运行,我的 Zendesk 目标也会给出 Net::ReadTimeout 错误
- django-models - 在 Django 1.11.20 上迁移失败,并且 ugettext() 得到了一个意外的关键字参数“默认”
- angular - Angular - 找不到模块
- ios - 无法在 SwiftUI 的当前上下文中推断闭包类型