2013-07-01 114 views
1
import datetime as dt 
dt.datetime.strptime('2000', '%Y') 

創建日期對象,我可以放進一個Django models.DateField()將datetime與DateField進行等價比較?

但是,一旦檢測DateField被提交到數據庫,我不能用等效源DateTime對象,檢查平等:

>>> dt.datetime.strptime('2000', '%Y') == myRecalledDbObj.dateFieldVal 
False 

進行打印透露:

1961-12-23 00:00:00 
1961-12-23 

所以......如何比較的等價?

回答

2

您正在比較日期時間和日期。這些永遠不會是平等的。嘗試在日期時間上調用日期方法,將它與Django中的DateField進行比較,或者將模型切換爲使用DateTimeField。

dt.datetime.strptime('2000', '%Y').date() == myRecalledDbObj.dateFieldVal