Saya memiliki timestamptz
bidang sadar zona waktu di PostgreSQL. Ketika saya menarik data dari tabel, saya kemudian ingin mengurangi waktu sekarang sehingga saya bisa mendapatkan usianya.
Masalah yang saya alami adalah keduanya datetime.datetime.now()
dan datetime.datetime.utcnow()
sepertinya mengembalikan cap waktu yang tidak disadari zona waktu, yang mengakibatkan saya mendapatkan kesalahan ini:
TypeError: can't subtract offset-naive and offset-aware datetimes
Apakah ada cara untuk menghindari ini (sebaiknya tanpa menggunakan modul pihak ketiga).
EDIT: Terima kasih atas sarannya, namun mencoba menyesuaikan zona waktu sepertinya memberi saya kesalahan .. jadi saya hanya akan menggunakan cap waktu yang tidak disadari zona waktu di PG dan selalu menyisipkan menggunakan:
NOW() AT TIME ZONE 'UTC'
Dengan begitu semua stempel waktu saya adalah UTC secara default (meskipun lebih menjengkelkan untuk melakukan ini).