Фильтр одной даты из DateTimeTZRange

У меня есть модель, которая возвращает диапазон дат указанным ниже способом, мне нужно проверить, является ли сегодняшний день 10 дней до дней, как вы можете видеть в ниже возвращенной дате if today date + 10 days = start_end_range

class MyModel(models.Model):
    start_end_range = ranges.DateTimeTZRange()


'start_end_range': DateTimeTZRange(datetime.datetime(2022, 11, 30, 20, 0), datetime.datetime(2022, 11, 30, 20, 30),

Первый набросок решения. Он основан на некоторых предположениях, а именно, что вы хотите, чтобы проверка даты была ==.

from datetime import datetime, timedelta 
from psycopg2.extras import DateTimeTZRange

dtr = DateTimeTZRange('2022-08-08 06:00', '2022-08-08 8:30') 

d = dtr.lower
d                                                                                                                                                            
'2022-08-08 06:00'

start_date = datetime.fromisoformat(d)                                                                                                                                      
start_date
datetime.datetime(2022, 8, 8, 6, 0)

test_dt = datetime(2022, 7, 25)
(test_dt + timedelta(days=10)) ==  start_dt
False

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