sqlalchemy自定义类型TypeDecorator储存时间时区到sqlite3
from sqlalchemy import String, TypeDecorator
# 自定义类型
class DateTimeTZString(TypeDecorator):
"""指定函数名称"""
impl = String
def process_bind_param(self, value, dialect):
if value is not None:
# 为什么添加 sep参数,因为带有时区的python的datetime对象输出的文本是这样
return value.isoformat(sep=' ', )
return value
def process_result_value(self, value, dialect):
if value is not None:
return datetime.fromisoformat(value.replace(' ', 'T'))
return value
# 后续实现的字段实现
localtime: Mapped[datetime] = mapped_column(DateTimeTZString(), nullable=True)
出处: https://www.cnblogs.com/meizhengchao/p/18232546
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出, 原文链接 如有问题, 可邮件(meizhengchao@qq.com)咨询.