Удалите микросекунды из объектов datetime метода моделирования
У меня есть этот метод, он возвращает время_слева, отсюда и название.
Моя проблема заключается в дополнительных микросекундах, добавленных в конце.
from django.utils.timezone import now
class ModelClass(models.Model):
....
due_date = models.DateTimeField()
@property
def time_left(self):
data = {"in_negative": False}
remaining = self.due_date - now()
data["remaining"] = remaining
if remaining.days < 0:
data["in_negative"] = True
return data
Вот что я получаю на своем шаблоне
3 days, 10:38:53.070894
Что я хочу
3 days, 10:38:53
Если вас интересует только получение строк, вы можете отделить секунды от периода .
и игнорировать правую часть строки. Пример:
@property
def time_left(self):
data = { 'in_negative':False }
remaining = self.due_date - now()
if remaining.days < 0:
data['in_negative'] = True
date_str = str(remaining).split(".")[0]
data["remaining"] = date_str
return data