如果a有一个表单,来自用户的数据,让我们说一个简历,然后我将表单中的数据保存到数据库中,但我不希望将来自同一用户的CV存储在数据库不止一次(当编辑实例时)
我想让它在每次由同一个用户保存时被覆盖。 我该怎么办?
非常感谢
答案 0 :(得分:2)
Django的save()应该自动为你处理。
举一个例子,您通常会以这样的方式提交表格:
...
form = UserCVForm(request.POST, instance=user_cv)
if form.is_valid():
form.save()
...
'instance = user_cv'告诉django您要更新现有条目 - 特别是'user_cv'。如果没有'instance = user_cv',Django会在数据库中插入一个新条目。
简而言之,看看user_cv是否已存在类似user_cv = UserCV.objects.get(user = user_id)的内容。如果user_cv存在,请务必在填充表单时敲击instance = user_cv。