Как отфильтровать список по оставшимся дням даты рождения в Django

Я хочу вывести список предстоящих дней рождения с оставшимися днями из 30 дней.
Пример:

Name Date Of Birth Remaining Days
John Die 2050-10-25 4 Days Left
John Snow 2050-10-26 5 Days Left

Я не знаю, как вычислить оставшиеся дни, но я попробовал этот код, но получил ошибку "can't subtract offset-naive and offset-aware datetimes"

customer=Customer.objects.filter()[:10]
    for i in customer:
        remaining = i.dateOfBirth - datetime.today()
        print(remaining)

Вы можете удалить tzinfo из datetime.today()

remaining = i.dateOfBirth - datetime.today().replace(tzinfo=None)

Или добавьте его в i.dateOfBirth

remaining = i.dateOfBirthreplace(tzinfo=datetime.timezone.utc) - datetime.today()

Больше информации : https://code.luasoftware.com/tutorials/python/python-typeerror-cant-subtract-offset-naive-and-offset-aware-datetimes/

Вернуться на верх