0
我不確定我瞭解modelformset_factory
庫的工作原理。我想向用戶展示一個動態數量的表單以向數據庫添加新項目。Django ModelFormSet排除(或過濾)現有項目
我的模式是這樣的:
#models.py
class Question(models.Model):
user = models.ForeignKey(User)
text = models.CharField(max_length=100)
class Answer(models.Model):
question = models.ForeignKey(Question)
text = models.CharField(max_length=100)
,因此用戶可以定義的問題,並儘可能多的回答(選擇)這個問題。
所以在我看來,我希望得到他們想要多少答案添加和創建動態表單集,這樣的:
def q_answers(request, qid, howManyAnswersMore):
AnswerModelFormSet = modelformset_factory(Answer, fields=('question','text'), extra = howManyMore)
formset = AnswerModelFormSet()
的問題是,我的表單集包含數據庫中所有的答案(所以問題#1的回答#1,q1的a2,q2的a1,q2的a2等)
但是,我只想顯示URL中用qid
參數表示的問題的答案。如何過濾僅與該問題相關的答案項目?
此外,我可以排除已經存在的項目,只讓用戶添加新的問題嗎?
感謝您的幫助!
的問題是不是與工廠,但是你如何實例化你不顯示的formset。 –
@DanielRoseman我不知道我把哪一條線放在。我添加了'formset = AnswerModelFormSet()'這一行,並將這個formset傳遞給模板。 – jeff