如何保存相同型号的几种形式?
这是一个例子,我有一个包含很多字段的模型,所以我决定使用该模型的不同模型字段创建几个表单,而不是创建一个大表单,因为站点需要为每个数据部分定制样式,所以将具有相同样式的输入字段分组到一个表单更容易。
def add_pet(request):
form1 = PetMainInfoForm()
form2 = PetFoodForm()
form3 = PetDescriptionForm()
if request.method == 'POST':
form1 = PetMainInfoForm(request.POST)
form2 = PetFoodForm(request.POST)
form3 = PetDescriptionForm(request.POST)
if form1.is_valid() and form2.is_valid() and form3.is_valid():
form1.save()
form2.save()
form3.save()
return HttpResponse('ok ok ok')
return render(request, 'add_pet.html', {'form1': form1,
'form2': form2,'form3': form3})
答案 0 :(得分:0)
您是否尝试为每个表单使用前缀?每个表单的前缀应该是唯一的。这样,当您回发时,您知道哪个表格已发布。它帮助我从同一个模板发布了多个表单。我希望它对你也有帮助。
form1 = PetMainInfoForm(request.POST, prefix='PetMainInfoForm')