【发布时间】:2019-12-22 22:49:44
【问题描述】:
我正在尝试使用我的网站前端使用 Model.objects.update(**kwargs) 提供的信息更新我的数据库中的记录,但是在运行代码时我收到以下错误:
“具有此 ID 的‘记录’已经存在。”
我原以为使用“update”方法而不是“create”方法意味着已经有一条具有相同 ID 的记录并不重要/应该预期。
def find_patient(request):
my_form = ExampleForm()
if request.method == "POST":
my_form = ExampleForm(request.POST)
if my_form.is_valid():
UserInfo.objects.update(**my_form.cleaned_data)
else:
print(my_form.errors)
context = {
'form': my_form,
'data_input': DataInput.objects,
'sections': SECTION_CHOICES
}
return render(request, 'example.html', context)
生成的错误如下所示:
我是否误解了“更新”的用例,如果是,我将如何使用 kwargs 更新我的数据库中给定记录的所有字段?
【问题讨论】:
-
您的
update旨在更新所有条记录,而不仅仅是一条记录。由于它包含主键,因此您的目标是将所有ids 设置为特定值,这当然会引发错误。 -
你做错了,请查看*.com/questions/4673985/…