如何在Django中比较两个日期时间

弗拉迪斯拉夫

我不能比较两个日期时间变量。其中之一是我的models.py中的DateTimeField

date_of_end_discount = models.DateTimeField()

第二个是datetime.now。这是比较代码示例

from datetime import datetime

def is_discount(self):
    return self.date_of_end_discount > datetime.now()

但是我有TypeError:

can't compare offset-naive and offset-aware datetimes
维卡斯·梅娜(Vikas Meena)

AFAIK datetime.now()不支持时区。

Django随附了一个帮助程序,需要pytz

 naive = datetime.replace(tzinfo=None)

或者您可以使用时区代替日期时间来解决此问题。

from django.utils import timezone
now = timezone.now()

您现在应该可以比较日期了。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章