Python ForeignKey上返回相同ID的多条记录的Django聚合计数

Python ForeignKey上返回相同ID的多条记录的Django聚合计数,python,django,Python,Django,模型结构是:问题有一个视频,问题有多个答案 问题是: questions = Question.objects\ .values('id', 'answer', 'section__title', 'title', 'created_at','user__username')\ .filter(video=v).annotate(answer_count=Count('answer')) 我使用Count aggregate函数添加一个额外的字段来表示一个问题有多少个答案 它适用于零和

模型结构是:问题有一个视频,问题有多个答案

问题是:

questions = Question.objects\
  .values('id', 'answer', 'section__title', 'title', 'created_at','user__username')\
  .filter(video=v).annotate(answer_count=Count('answer'))
我使用Count aggregate函数添加一个额外的字段来表示一个问题有多少个答案

它适用于零和一答案。但是如果一个问题有三个答案,我会得到三个不同的行,它们具有相同的ID,答案计数=1,并且“答案”字段具有不同的ID


我做错了什么?

我不确定您的模型定义是什么。我想你有这样的东西:

class Answer(models.Models):
    question = models.ForeignKey(Question, related_name='answer')
当您按照所描述的方式查询时,每个答案将检索一行。如果您在
值调用中省略了
'answer',
,您应该会得到您想要的