我有一个DateTimeField
:
class Assignment (models.Model):
official_deadline = models.DateTimeField(null=True, blank=True)
我需要将它与当前日期时间进行比较,我已经尝试过:
def official_deadline_past(self):
if datetime.datetime.today() > self.official_deadline:
return True
return False
但它总是返回 False
我也试过:
def official_deadline_past(self):
if datetime.datetime.now() > self.official_deadline:
return True
return False
但我也有同样的问题。
我在该字段中有一个信息:2011-07-02 00:00:00
例如在 ModelForm
最佳答案
我在 python 2.7.3 和 django 1.3.1 下比较 DateTimeField 和 datetime 时遇到了类似的问题
我认为 DateTimeField 没有很好的时区支持,或者我没有正确配置它。
每当我为日期时间字段指定时区时,我对 DateTimeField > datetime 的所有比较都会失败。
datetime 使用的是本地中部时间,而 DateTimeField 输入的是东部时间。
我最后只是做了一个愚蠢的 hack,将 timedelta(hours=1) 添加到 datetime 中心对象以将其“转换”为东部时间。
关于python - Django DateTimeField 与 datetime.now() 进行比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11762612/