2009-12-11 23 views
4

假設我有:如何在Django中比較datetime?

ds = datetime.datetime.now 
dd = Entry.objects.get(pk=id).pub_date 

如何比較上述2個對象?我想得到他們之間的時差。 請幫我解決這個問題。非常感謝你 !

回答

18

我假設pub_datedjango.db.models.DateField,這意味着您可以將其視爲datetime.date對象。

如果您將它們轉換爲相同類型(datetime.datetimedatetime.date)並將另一個相減,您將得到一個datetime.timedelta的實例。

當您使用datetime.datetime.now(),如果你的pub_date是一個簡單的日期,而不是日期時間,你不妨使用ds = datetime.date.today()代替:

>>> ds = datetime.date.today() 
>>> dd = datetime.date(2009, 12, 9) 
>>> ds - dd 
datetime.timedelta(2) # 2 days ago