私は次のモデルを持っています:
class Question(models.Model):
question = models.CharField(max_length=100)
detail = models.TextField(null=True, blank=True)
class PossibleAnswers(models.Model):
question = models.ForeignKey(Question)
value = models.CharField(max_length=200)
class Answer(models.Model):
question = models.ForeignKey(Question)
value = models.CharField(max_length=200)
それぞれQuestion
がPossibleAnswers
ユーザーによって定義されています。例: 質問 - 最高の果物は何ですか? 考えられる答え - リンゴ、オレンジ、ブドウ。これで、他のユーザーはAnswer
、回答が に制限された質問をすることができPossibleAnswers
ます。
私が抱えている問題は、それぞれの数を取得することですAnswer
。アップル vs オレンジ vs グレープを選択した回答者は何人ですか?
Question.answer_set.filter(value="Grapes").count()
はすべてのブドウの回答の数を返しますが、フィルター条件 (この場合はブドウ) がわからない場合はどうなるでしょうか? ユーザーが回答オプションを定義し、さまざまなオプションがいくつあるかを定義するので、各回答オプションの応答数をどのように取得しますか?