我想要每个电台一首歌的所有播放。
class Airplay(Timestamps):
song = models.ForeignKey(Song, on_delete=models.CASCADE)
radio = models.ForeignKey(Radio, on_delete=models.CASCADE)
airedAt = models.DateTimeField(blank=True)
我试着像这样计算播放
Airplay.objects.all().annotate(play_count=Count(Concat('song__id', 'radio__id'), distinct=True)).order_by('play_count')
我看到一首歌x台组合出现了几次。但play_count
始终为1。
发布于 2021-09-28 12:19:14
试试这个:
Airplay.objects.values('song', 'radio').annotate(play_count=Count('*')).order_by('play_count')
这将统计在radio
实例上播放song
实例的次数。
https://stackoverflow.com/questions/69359264
复制相似问题