简体   繁体   中英

How to compare datetime in Django?

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

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM