我有一个查询集,我正在使用过滤器:.... = testResult.objects.filter(topic = "1")
我有多个主题,我希望查询分别应用于每个主题 - 所以即5个主题topic = 1
,{{1} } .... topic = 2
。我想知道是否有一种方法可以将查询重复5次?所以必须做topic = 5
...然后查询5次...如果我没有设置过滤器,返回的值将是所有主题的得分 - 我实际上想要每个主题的得分。我现在可以这样做,但我正在使用理想情况下我不想要的复制代码。我虽然有一些简单的东西,testResult.objects.filter(topic = "1")
答案 0 :(得分:0)
您的问题需要您了解两件事:
__in
查询,允许您使用多个值进行过滤:Model.objects.filter(topic__in=[1, 2, 3, 4])
。 Django' docs
Group by
,可让您“汇总”数据。 Django's docs
我只是指出了文档,所以你可以阅读它并了解正在发生的事情。