我有以下型号:
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
. 有多少人选择 Apple vs Orange vs Grapes?
Question.answer_set.filter(value="Grapes").count()
返回所有葡萄答案的计数,但是如果您不知道过滤条件(在这种情况下为葡萄)会是什么?由于用户定义了答案选项,并定义了有多少不同的选项,那么您将如何获得每个答案选项的响应计数?