Основная проблема заключается в том, что вы сопоставляете столбец SQLALchemy DateTime
со столбцом PostgreSQL time with time zone
.Вместо этого вам следует заглянуть в Time
.
Если вы намеревались использовать столбец PostgreSQL timestamp with time zone
, то вам все равно нужно переосмыслить настройки по умолчанию, поскольку datetime.now
не знает о часовом поясе.Есть несколько способов справиться с этим, но самый простой - использовать взамен func.now()
SQLAlchemy.Например:
from sqlalchemy import Column, DateTime, Integer, MetaData, Table
from sqlalchemy.sql import func
metadata = MetaData()
example = Table('example', metadata,
Column('id', Integer, primary_key=True),
Column('date', DateTime(timezone=True), default=func.now())
)