PHP前端开发

如何解决 Sqlalchemy 查询数据返回的时间类型不符合预期的问题?

百变鹏仔 5天前 #Python
文章标签 不符合

python sqlalchemy 查询数据返回时间类型的问题?

在使用 sqlalchemy 查询数据库时,返回的时间类型可能与预期不符。例如,原本的 datetime 类型字段可能显示为 sat, 22 jan 2022 21:20:26 gmt 这样的格式。

解决方法

一种方法是将其手动转换为所需格式:

from datetime import datetime# ...result = connection.execute(text("select * from data limit 10"))data = []for row in result:    row_dict = {key: value.strftime('%y-%m-%d %h:%m:%s') if isinstance(value, datetime) else value for key, value in row.items()}    data.append(row_dict)return data

如果希望在整个应用程序中都使用相同的时间格式,也可以将其作为配置项进行设置:

import datetime# 设置全局时间格式datetime.datetime.strftime = lambda self, fmt: self.strftime(fmt) if isinstance(self, datetime.datetime) else str(self)