2014-02-22 60 views
0

我想檢索所有對象形成一個日期查詢在Django

class A(models.Model): 
    date_sent = models.DateTimeField() 

爲此DATE_SENT是超過1天以上。

我想:

A(Q((date_sent - datetime.now()).days > 1)) 

但是Python告訴我,DATE_SENT沒有定義。

回答

1
from datetime import datetime, timedelta 

result = A.objects.filter(date_sent__lt=datetime.date.today() - timedelta(days=1)) 
+0

我想我們要替換「得」與「過濾器」如果有多個對象需要返回。但非常感謝你的答案。 – user695652

+0

@ user695652你說得對,我的錯。我修復了它。 – pkacprzak

0

如果A是你的類的名字,我想你必須調用A.objects.get第一:

A.objects.get(
    Q((date_sent - datetime.now()).days > 1) 
) 

"Making queries" from the Django documentation

+0

由於同樣的原因('date_sent'未定義),這仍然不起作用。 –