代码之家  ›  专栏  ›  技术社区  ›  user994165

SQLAlchemy/PostgreSQL未使用正确的时间戳格式创建列

  •  1
  • user994165  · 技术社区  · 6 年前

    我创建了下表。在脚本中运行此命令以填充数据库之后 created_at 列返回值为“2018-10-24 19:47:22.60331”。

    https://www.postgresql.org/docs/9.2/static/functions-datetime.html#FUNCTIONS-DATETIME-CURRENT 显示添加时区偏移的函数。

    def simulation_version_metadata(metadata):
        simulation_version = Table('simulation_version', metadata,
                                   Column('id', Integer, primary_key=True),
                                   Column('simulation_id', None,
                                          ForeignKey('simulation.id')),
                                   Column('created_at', DateTime,
                                          server_default=func.current_timestamp()),
                                   Column('updated_at', DateTime,
                                          server_default=func.current_timestamp()),
                                   )
        return simulation_version
    
    1 回复  |  直到 6 年前
        1
  •  1
  •   benvc    6 年前

    DateTime SQLAlchemy中的列默认为 timezone=False timezone=True 比如:

    Column('created_at', DateTime(timezone=True), server_default=func.current_timestamp())