给定一个 FaqTopic id,我试图获得一组回答过该主题问题的受访者。我假设这将至少需要两个查询,但我不完全确定如何去做。我的模型大致如下:
class FaqTopic(models.Model):
name = models.CharField(max_length=50)
class Respondant(models.Model):
name = models.CharField(max_length=50)
class Answer(MediaReady):
text = models.TextField( blank=True )
respondant = models.ForeignKey( Respondant, blank=True, null=True )
class Question(MediaReady):
text = models.CharField( max_length=255, blank=True )
answers = models.ManyToManyField( Answer, blank=True, null=True )
topic = models.ForeignKey( FaqTopic, blank=True, null=True )
我可以这样做:
topic = FaqTopic.objects.get(pk=topic_id)
questions = topic.question_set.all()
然后遍历每个问题并建立一组独特的受访者。但这似乎很难看。