假設我有一家水果店。我出售蘋果,香蕉和其他水果。Django通過最高出現日期總計對象數據
有時我會在一個小時內賣出幾件物品,有時甚至沒有。
我想知道我賣哪個日期最蘋果,有多少我的那一天賣...
(我使用一個sqlite3的數據庫和Django 1.5)
我的模型看起來像:
class fruitsales(models.Model):
fruit = models.CharField(max_length=128, unique=False)
num_sold = models.IntegerField(default=0)
date = models.DateField()
def __unicode__(self):
return self.fruit
一個詳盡的數據集可能看起來像:
fruit = "apple", num_sold = 3, date = 01/01/2015
fruit = "apple", num_sold = 5, date = 01/01/2015
fruit = "banana", num_sold = 24, date = 01/01/2015
fruit = "apple", num_sold = 6, date = 02/01/2015
我CUR在我的views.py中做這樣的事情:
fruit = fruitData.objects.filter(fruitName=fruit***This is from the url and would in this
instance be:"apple"***).values('fruit').annotate(total_Sold=Sum('num_sold'))
This returns;蘋果,14,02/01/2015。而我希望;蘋果,8,01/01/2015
謝謝:D
這讓我相當長的一段路,它聚合所有類型的水果,每天售出,所以在我們的例子中,它給蘋果,8 ,01/01/2015和蘋果,6 02/01/2015。所以對於完整的查詢,我想我們最後需要一個過濾器。不幸的是,在最後導致一個錯誤:.order_by(' - mentions')[:1]感謝您的協助Gocht! – William
@William我想是因爲與價值觀,你有一本字典,而不是一個查詢集,給你一個錯誤,請嘗試刪除最後一個值。 – Gocht
謝謝@Gocht,我的道歉卻不打算把這個問題更清楚,但是這就是我掙扎着開始 - 因此這個問題;) – William