Как сравнить дату и время в Джанго?
-
19-09-2019 - |
Вопрос
Предположим, у меня есть:
ds = datetime.datetime.now
dd = 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()
вместо:
>>> ds = datetime.date.today()
>>> dd = datetime.date(2009, 12, 9)
>>> ds - dd
datetime.timedelta(2) # 2 days ago
Не связан с StackOverflow