Django DateTimeField与datetime.now()进行比较

nla*_*aux 6 python django

我有一个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

joh*_*ler 0

我在 python 2.7.3 和 django 1.3.1 下比较 DateTimeField 和 datetime 时遇到了类似的问题

我认为 DateTimeField 当时没有良好的时区支持,或者我没有正确配置它。

每当我为日期时间字段指定时区时,所有 DateTimeField > 日期时间的比较都会失败。

日期时间使用当地中部时间,而日期时间字段输入为东部时间。

我最终只是做了一个愚蠢的黑客攻击,将 timedelta(hours=1) 添加到日期时间中心对象,以将其“转换”为东部。