2014-03-03 63 views
0

正確計算領域,我有以下型號:不能在Django視圖

class Download(models.Model): 
id = models.AutoField(primary_key=True) 
song = models.ForeignKey(Song) 
download_date = models.DateTimeField(auto_now_add=True) 

我想獲得多少次某些歌曲已經在一段時間內被下載。

我建立的查詢是這樣的:

res = Download.objects.filter(download_date__range=[date_1, date_2]).annotate(downloads = Count('id')).values('id', 'song', 'downloads') 

我已經試過還指望首歌,但沒有成功。它不斷返回重複歌曲,計數爲1.

+0

我想是這樣的:宋1(10個下載),宋2(19個下載)等。 – Kookoriko

回答

1

試試這個:

Download.objects.filter(download_date__range=[date_1, date_2]).values('song').annotate(downloads = Count('id')) 
+0

保存了我的一天。我認爲有必要將註釋字段寫入values子句中。非常感謝。 – Kookoriko