Python 从使用Formset创建的模板中删除额外添加的值

Python 从使用Formset创建的模板中删除额外添加的值,python,django,Python,Django,我可以使用Formset在数据库中保存值,但当我尝试创建一个以上的表单时,模板中会显示明显增加的值 这是一个奇怪的问题,但我想知道如何解决此问题。对于那些不知道如何解决此问题的人,解决方案如下: ModelFormset始终支持旧数据。因此,不要在表单中编写“modelformset_factory”,而是在views.py中编写,如下所示: smodelFormset=modelformset_factory(smodel,form= smodelForm,extra=1) form=fmod

我可以使用Formset在数据库中保存值,但当我尝试创建一个以上的表单时,模板中会显示明显增加的值


这是一个奇怪的问题,但我想知道如何解决此问题。

对于那些不知道如何解决此问题的人,解决方案如下:

ModelFormset始终支持旧数据。因此,不要在表单中编写“modelformset_factory”,而是在views.py中编写,如下所示:

smodelFormset=modelformset_factory(smodel,form= smodelForm,extra=1)
form=fmodelForm(request.POST or None)
formset=smodelFormset(request.POST or None, queryset=smodel.objects.none())

if request.method == 'POST':
   if form.is_valid() and formset.is_valid():
      instance=form.save()
      forms=formset.save(commit=False)
      for f in forms:
       f.foreignkey=instance.id
       f.save()

你可以通过修改代码来解决问题。谢谢你激励我。我解决了这个问题。:)