我如何在 Django 的 SingleView 中拥有多个 ModelForms?
How Do I Have Multiple ModelForms In Django in A SingleView?
我正在尝试创建一个项目,其中我有一个将一组数据作为输入的模型表单。
但这不是问题,我如何拥有单一模型形式的多种形式。
我试过使用这样的东西
from .forms import BookForm
# Create your views here.
def home_page(request):
context = {}
form = BookForm(request.POST or None)
form1 = BookForm(request.POST or None)
if form.is_valid():
form.save()
if form1.is_valid():
form1.save()
context['form']= form
context['form1']= form1
return render(request, "home.html", context)
但是发生的是在最后一个表单中传递的数据在所有表单中传递。
我如何在 Django 中实现此功能在单个视图中处理多个表单,单击按钮即可提交
您可以在 django 中使用 formsets。
由于您使用的是模型表单,因此您可以使用称为 model formsets 的东西和称为 modelformset_factory
的东西。
基本上,表单集可以帮助您获得表单列表。想象一下,您的单个表单现在变成了表单列表。
查看此 link 以获得教程
如果您需要更多解释,请告诉我
我正在尝试创建一个项目,其中我有一个将一组数据作为输入的模型表单。 但这不是问题,我如何拥有单一模型形式的多种形式。
我试过使用这样的东西
from .forms import BookForm
# Create your views here.
def home_page(request):
context = {}
form = BookForm(request.POST or None)
form1 = BookForm(request.POST or None)
if form.is_valid():
form.save()
if form1.is_valid():
form1.save()
context['form']= form
context['form1']= form1
return render(request, "home.html", context)
但是发生的是在最后一个表单中传递的数据在所有表单中传递。 我如何在 Django 中实现此功能在单个视图中处理多个表单,单击按钮即可提交
您可以在 django 中使用 formsets。
由于您使用的是模型表单,因此您可以使用称为 model formsets 的东西和称为 modelformset_factory
的东西。
基本上,表单集可以帮助您获得表单列表。想象一下,您的单个表单现在变成了表单列表。
查看此 link 以获得教程
如果您需要更多解释,请告诉我