2009-08-12 66 views
6

this Django Doc解释了如何创建一个允许您编辑属于特定作者的书籍的formset。没有实例的Django Formset

我想要做的是:创建一个formset,允许您添加属于新作者的新书...将书籍及其作者添加到同一个表单集中。

你能轻点一下吗?谢谢。

回答

8

当您为初始显示实例化窗体和窗体集时,您不需要提供实例 - 因此您只需获取空白窗体。

当您在POST中传递数据时,可以先执行表单,保存它并获取实例。然后,您可以将该实例传递给formset,以便正确保存相关对象。

+1

谢谢,灯: 如果request.method == “POST”: bookform = BookForm(request.POST) B = bookform .save(提交=假) b.save() 表单集= PadreFormSet( request.POST,request.FILES,instance = b) if formset.is_valid(): formset.save() 它为我工作,谢谢! – panchicore 2009-08-13 02:53:59

0

这取决于您是自己做,还是使用内置管理员。

如果您使用管理员,则可以使用inlines

如果你在自己的应用程序中这样做,那取决于你。创建一个新表格,其中包含新的authorbook的字段。当用户提交表单时,创建新记录是您的工作。