假设我有:

ds = datetime.datetime.now
dd = Entry.objects.get(pk=id).pub_date

如何比较上述2个对象?我想他们之间的时间差。 请帮我解决这个问题。非常感谢你!

有帮助吗?

解决方案

我假定pub_datedjango.db.models.DateField,这意味着可以把它当作一个对象datetime.date

如果将它们转换为相同的类型(datetime.datetimedatetime.date),并从其他减去一个,就会得到datetime.timedelta的一个实例。

由于您使用datetime.datetime.now(),如果你的pub_date是一个简单的日期,而不是日期时间,你不妨使用ds = datetime.date.today()代替:

>>> ds = datetime.date.today()
>>> dd = datetime.date(2009, 12, 9)
>>> ds - dd
datetime.timedelta(2) # 2 days ago
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top