Я использую тип столбца DateRange
, чтобы сохранить бронирование для системы бронирования.
Моя база данных - это PosgreSQL, и я использую Python 3 с Flask и SQLAlchemy.
Несмотря на то, что рекомендуется использовать DateRange
, я даже не нахожу документацию или что-нибудь полезное о том, как работать с этими типами.
В документации SQLAlchemy написано только 2 предложения о существовании такого типа столбца.
Примечание здесь:
Все ресурсы, которые я нахожу, показывают только то, что люди обычно используют дату начала и дату окончания. Мой подход с DateRange
плох?
В настоящее время я успешно сохраняю некоторые диапазоны дат в БД. Теперь мне нужно передать все недоступные даты в представление в формате JSON, чтобы мой календарь мог использовать эти дни для их блокировки. Поэтому мне нужно построить подходящий формат. Поскольку datetime
не сериализуем, мне нужно преобразовать его в строку.
Мои объекты диапазона дат выглядят так: atm .:
for bdate in room.RoomObject_addresses_UserBooksRoom:
print (bdate.booked_date)
Выход:
DateRange(datetime.date(2018, 8, 1), datetime.date(2018, 8, 9), '[)')
DateRange(datetime.date(2018, 8, 1), datetime.date(2018, 8, 10), '[)')
DateRange(datetime.date(2018, 9, 7), datetime.date(2018, 9, 14), '[)')
Я хотел бы преобразовать их в списки или кортежи с этим форматом %Y-%m-%d
, поэтому я бы получил такой вывод:
['2018-08-01','2018-08-09']
Я знаю, как это делается с datetime
объектами, но здесь я понятия не имею, и, как упоминалось выше, я не смог найти больше информации по этой теме.