如何比较 Django 中的日期时间? [英] How to compare datetime in Django?
问题描述
假设我有:
ds = datetime.datetime.nowdd = Entry.objects.get(pk=id).pub_date
如何比较上面的2个对象?我想得到它们之间的时差.请帮我解决这个问题.非常感谢!
我假设 pub_date
是一个 django.db.models.DateField
,这意味着你可以将其视为 datetime.date
对象.
如果您将它们转换为相同类型(datetime.datetime
或 datetime.date
)并从另一个中减去一个,您将获得一个 datetime.timedelta
.
当您使用 datetime.datetime.now()
时,如果您的 pub_date
只是一个日期而不是日期时间,您不妨使用 ds= datetime.date.today()
代替:
Suppose I have:
ds = datetime.datetime.now
dd = Entry.objects.get(pk=id).pub_date
How to compare 2 objects above? I want to get the time difference between them. Please help me solve this problem. Thank you very much !
I am assuming that pub_date
is a django.db.models.DateField
, which means you can treat it as a datetime.date
object.
If you convert them to the same type (either datetime.datetime
or datetime.date
) and subtract one from the other, you will get an instance of datetime.timedelta
.
As you are using datetime.datetime.now()
, if your pub_date
is simply a date rather than a datetime, you may as well use ds = datetime.date.today()
instead:
>>> ds = datetime.date.today()
>>> dd = datetime.date(2009, 12, 9)
>>> ds - dd
datetime.timedelta(2) # 2 days ago
这篇关于如何比较 Django 中的日期时间?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!