我想在调查/测试(类似Google表单)中显示一个表单以回答多种类型的问题。我的模型设置为我有一个Test
模型,Answer
模型带有Test
的外键,Answer
的子类(如多项选择,简答题)以及该问题类型所需的额外字段。使用模型子类(或多个模型)的Django内联formset
我的第一个想法是使用内联formset来显示答案的字段。但是,如果我为Answer
创建了内嵌窗体集,则表单仅显示此超类的字段,而不显示特定的子类答案类型。它不会出现(基于我的搜索),可以创建一个多种模型类型的内联表单。这个功能可能吗?
(它发生,我认为它可能是由创建每个Answer
的个人表单列表基本上是手动滚动一个formset可能的,但是这似乎并不像一个很优雅的解决方案。)
如果您正在使用CBV的检查django-extra-views包含内联表单集(创建和更新视图)。 – petkostas
这个问题不是缺乏内嵌式表单的CBV;这是内联formset没有完成工作。 – Pterosaur
对不起,但我没有看到任何类型的代码(模型相关),以便更清楚,如果我是正确的,你有一个Abstract Answer模型类,并从那里实现一个具体的?如果是的话,为每个答案和内联再次ModelForm可能是解决方案,为了避免DRY我会检查额外的视图类和重写他们注入不同的模型。 – petkostas