我想在調查/測試(類似Google表單)中顯示一個表單以回答多種類型的問題。我的模型設置爲我有一個Test
模型,Answer
模型帶有Test
的外鍵,Answer
的子類(如多項選擇,簡答題)以及該問題類型所需的額外字段。使用模型子類(或多個模型)的Django內聯formset
我的第一個想法是使用內聯formset來顯示答案的字段。但是,如果我爲Answer
創建了內嵌窗體集,則表單僅顯示此超類的字段,而不顯示特定的子類答案類型。它不會出現(基於我的搜索),可以創建一個多種模型類型的內聯表單。這個功能可能嗎?
(它發生,我認爲它可能是由創建每個Answer
的個人表單列表基本上是手動滾動一個formset可能的,但是這似乎並不像一個很優雅的解決方案。)
如果您正在使用CBV的檢查django-extra-views包含內聯表單集(創建和更新視圖)。 – petkostas
這個問題不是缺乏內嵌式表單的CBV;這是內聯formset沒有完成工作。 – Pterosaur
對不起,但我沒有看到任何類型的代碼(模型相關),以便更清楚,如果我是正確的,你有一個Abstract Answer模型類,並從那裏實現一個具體的?如果是的話,爲每個答案和內聯再次ModelForm可能是解決方案,爲了避免DRY我會檢查額外的視圖類和重寫他們注入不同的模型。 – petkostas