2015-02-11 30 views
0

我的問題是我保存了django模型中的所有條目,但現在我想過濾這些在我的視圖中的所有條目。Django過濾器模型中的最新條目

我想

delBoySale.objects.latest('timeStamp') 

它僅返回單個條目,但我希望是最後一次保存的所有條目。 我該怎麼辦?

回答

0

使用切片語法獲得數目:

delBoySale.objects.all().order_by('-timeStamp')[:10] 

這將返回10最後保存的實例。

要通過timeStamp場得到在過去一小時使用過濾器創建的實例:

from datetime import timedelta 
from django.utils.timezone import now 

hour_ago = now() - timedelta(hours=1) 
delBoySale.objects.filter(timeStamp__gt=hour_ago).order_by('-timeStamp') 
+0

是的,但我不知道有多少條目保存最後一次。這是可能的。 – 2015-02-11 10:30:05

+0

你上次是什麼意思?無論如何看到更新的答案。 – catavaran 2015-02-11 10:38:17

0

您應該使用 'GTE' 表達:

https://docs.djangoproject.com/en/1.7/ref/models/querysets/#gte

如果 '時間戳' 是DateTimeField字段:

last_date = datetime.datetime.now() - datetime.timedelta(hours=4) 

if'tim eStamp」是IntegerField:

last_date = datetime.datetime.now() - datetime.timedelta(hours=4) 
last_date = int(last_date.strftime("%s")) 

和過濾:

delBoySale.objects.filter(timeStamp__gte=last_date)