我有一个DateTimeField:
class Assignment (models.Model):
official_deadline = models.DateTimeField(null=True, blank=True)
Run Code Online (Sandbox Code Playgroud)
我需要将它与当前日期时间进行比较,我尝试过:
def official_deadline_past(self):
if datetime.datetime.today() > self.official_deadline:
return True
return False
Run Code Online (Sandbox Code Playgroud)
但它总是回来False我也尝试过:
def official_deadline_past(self):
if datetime.datetime.now() > self.official_deadline:
return True
return False
Run Code Online (Sandbox Code Playgroud)
但我有同样的问题.
我在该字段中有一个信息:2011-07-02 00:00:00例如,以生成的形式ModelForm
我在 python 2.7.3 和 django 1.3.1 下比较 DateTimeField 和 datetime 时遇到了类似的问题
我认为 DateTimeField 当时没有良好的时区支持,或者我没有正确配置它。
每当我为日期时间字段指定时区时,所有 DateTimeField > 日期时间的比较都会失败。
日期时间使用当地中部时间,而日期时间字段输入为东部时间。
我最终只是做了一个愚蠢的黑客攻击,将 timedelta(hours=1) 添加到日期时间中心对象,以将其“转换”为东部。