Python Sqlalchemy 查询数据返回时间类型的问题?
- 通过下面代码可以返回 JSON 数据,但是
datetime
类型字段变成别的样子了该如何解决?
python">engine = create_engine("mysql+pymysql://root:root@127.0.0.1/test")with engine.connect() as connection:
result = connection.execute(text("select * from data limit 10"))
return [dict(row) for row in result.mappings()]
- 变成了
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)
以上是 Python Sqlalchemy 查询数据返回时间类型的问题? 的全部内容, 来源链接: utcz.com/p/938935.html