Mam pole uwzględniające strefę czasową timestamptz
w PostgreSQL. Kiedy pobieram dane z tabeli, chcę odjąć teraz czas, aby uzyskać jego wiek.
Problem mam jest to, że zarówno datetime.datetime.now()
i datetime.datetime.utcnow()
wydają się powrócić strefy czasowej nieświadomych znaczniki czasu, co powoduje mi się następujący błąd:
TypeError: can't subtract offset-naive and offset-aware datetimes
Czy istnieje sposób, aby tego uniknąć (najlepiej bez użycia modułu innej firmy).
EDYCJA: Dzięki za sugestie, jednak próba dostosowania strefy czasowej wydaje się dawać błędy. Więc po prostu użyję strefy czasowej nieświadomej znaczników czasowych w PG i zawsze wstawiam używając:
NOW() AT TIME ZONE 'UTC'
W ten sposób wszystkie moje znaczniki czasu są domyślnie UTC (chociaż jest to bardziej denerwujące).