将datetime与DateField进行比较以获得等效性?

时间:2013-07-01 16:46:58

标签: python django django-models

import datetime as dt 
dt.datetime.strptime( '2000', '%Y' )

创建一个日期对象,我可以将其放入django models.DateField( )

但是,一旦将DateField提交到数据库,我就无法检查与等效的源datetime对象是否相等:

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

并打印它们显示:

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

那么...如何比较等效性?

1 个答案:

答案 0 :(得分:2)

您正在将日期时间与日期进行比较。这些永远不会是平等的。尝试在datetime上调用date方法将其与django中的DateField进行比较,或者切换模型以使用DateTimeField。

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