today
должно быть:
today = datetime.date.today()
Вычитание двух объектов даты-времени дает вам временную дельту.
>>> a - datetime.date.today()
datetime.timedelta(0)
>>> a = datetime.date.today()
>>> a - a
datetime.timedelta(0)
>>> a - a == 0
False
>>>
>>> a - a == datetime.timedelta(0)
True
Кроме того, если вы проверяете, что-то должно быть сегодня, вам может потребоваться изменить ваше условное заявление:
today - today isn't going to be > 0
Если вы проверяете просрочку:
return self.due_date < datetime.date.today()
Проверка на сегодня:
return self.due_date == datetime.date.today()