3

調査を管理するための柔軟なアプリを作成しようとしています。私が欲しいのは 、調査に関連するすべての質問、オプション、およびフォローアップの質問を表示するビューです。私は次のモデルを持っています:

class Survey(models.Model):
   title = models.CharField(max_length=300)

class Question(models.Model):
   question_text = models.CharField(max_length=300)
   belongs_to_survey = models.ForeignKey('Survey', related_name='questions') 
   follow_up_to_answer = models.ForeignKey('Question', null=True, related_name='follow_up_questions')

class Option(models.Model):
   answer_text = models.CharField(max_length=200)
   belongs_to_question = models.ForeignKey('Question', related_name='options')

inlineformset_factory を調べましたが、これは「1 レベルのネスト」しか許可しません。持っているものは理論上「無限」

Survey -> Questions -> Options -> Follow-up-Questions -> Options --\
                                             ^\____________________/ 

私は何か間違ったことをしていますか?私が見る限り、この問題は一般的なはずですが、スタックオーバーフローや他の場所に関する質問の数は、そうでないことを示唆しています。

4

1 に答える 1

0

2 回使用inlineformset_factory:

  1. Questionインスタンスを表示するにはSurvey
  2. Optionそれぞれのインスタンスを表示するにはQuestion

次に、各のoption_formset後にインスタンスが印刷される方法で、テンプレート表示フォームに表示されます。formquestion_formset

于 2013-03-21T13:35:00.127 に答える