3

考虑到 formset_factory() 函数仅将一个表单类作为参数,是否可以在 Django 中使用由异构表单组成的表单集?就像是:

    formset_factory(FormType1, FormType2,...)
4

1 回答 1

2

没有什么可以从根本上阻止表单集的概念与多个表单类一起使用,但工厂的设计并未考虑到这一点。要实现它,您实际上必须编写自己的表单集工厂来覆盖许多现有的 API。

考虑一下。您需要一个包含两个不同表单类的表单集。当 formset 被实例化时,它需要创建min(current + extra, max_forms)表单。但是它怎么知道要创建哪个表单类呢?如果所有形式都相同,这很容易,但是对于多个类,您必须找出一种做出这种选择的方法。我相信你可以想象这会变得相当复杂。表单向导功能可能会为此类 API 的工作方式提供一些可能的想法,但这是一个长期的目标,

我认为在这种情况下寻找替代方法可能是最佳选择。

于 2013-04-03T12:03:50.240 回答