В поле PostgreSQL есть поле timestamptz
, посвященное часовому поясу. Когда я извлекаю данные из таблицы, я тогда хочу вычесть время прямо сейчас, чтобы получить возраст.
Проблема, с которой я сталкиваюсь, заключается в том, что как datetime.datetime.now()
, так и datetime.datetime.utcnow()
, похоже, возвращают временные метки, не знающие временных меток, что приводит к получению этой ошибки:
TypeError: can't subtract offset-naive and offset-aware datetimes
Есть ли способ избежать этого (желательно, если не используется сторонний модуль).
EDIT: Спасибо за предложения, однако попытка настроить часовой пояс, кажется, дает мне ошибки.. поэтому я просто собираюсь использовать часовой пояс, не знающий временных меток в PG и всегда вставляя с помощью:
NOW() AT TIME ZONE 'UTC'
Таким образом, все мои временные метки по умолчанию являются UTC (хотя это более раздражает, чтобы сделать это).