python - 如何在 peewee 中获取 DateTimeField 的值
问题描述
class Test(Model):
time = DateTimeField()
# ...
row = Test.select()[0]
test.time
这将返回一个如下所示的字符串:2017-01-23 01:01:39+01:00
。我怎样才能把它作为一个日期时间对象呢?我必须手动解析它吗?
如果有任何关于如何使用DateTimeField
. 官方文档上没有任何内容。
解决方案
你在使用 SQLite 吗?如果是这样,SQLite 没有专用的日期时间类型,因此日期时间作为字符串存储在数据库中。peewee 将做的是识别来自数据库的某些日期时间格式并将它们转换为日期时间对象。您需要做的是确保:
- 当您创建/保存对象时,您将
datetime
对象分配给该字段。 - 读回预先存在的数据时,该数据采用可识别的格式。
peewee 支持开箱即用的日期时间字段格式有:
- YYYY-mm-dd HH:MM:SS.ffffff
- YYYY-mm-dd HH:MM:SS
- YYYY-mm-dd
看起来你有区域信息。我建议转换为 UTC 并删除区域信息。那应该解决它。
推荐阅读
- python - 给定熊猫中的列名列表,是否可以访问数据?
- flutter - Flutter - 依赖注入
- python - 根据 pandas 中的组用行值填充列的优雅方法
- javascript - 为什么chrome性能系统需要这么长时间?
- sql - 我想要与输入值有关的特定数据
- python - 如何从 PC 上的文本文件中读取 URL?
- html - 将 C POST 请求转换为 Curl
- java - 如何使用 if else 和 while 循环创建用于计算菜单价格的 java 代码
- visual-studio-code - 如何取消自动删除空白行与代码?
- python - Python - 自动选择垃圾箱,以使产生的频率分布正常