[英]Peewee select query on a datetime field does not return a datetime object
Hi I have a datetime field in my model, while executing select query on the model peewee returns a string representation of the datetime field instead of an actual datetime object.嗨,我的模型中有一个日期时间字段,在模型上执行选择查询时,peewee 返回日期时间字段的字符串表示形式,而不是实际的日期时间对象。
past_day = Model.select(Model, fn.MAX(Model.timestamp))[0].timestamp
# timestamp is a field of type DateTimeField() ; above query returns a str object
type(past_day) # prints str.
I want to get the pure python datetime object from this query, i looked everywhere but not getting a solution.我想从这个查询中获取纯 python 日期时间对象,我到处找,但没有得到解决方案。
Works fine as far as I can tell:据我所知,工作正常:
db = SqliteDatabase(':memory:')
class R(Model):
key = TextField()
ts = DateTimeField()
class Meta:
database = db
db.create_tables([R])
for i in range(1, 10):
R.create(key=str(i), ts=datetime.datetime(2020, 1, i))
r = R.select(R, fn.MAX(R.ts).alias('max_ts')).get()
print(r.key, type(r.max_ts), r.max_ts)
Prints:印刷:
9 <class 'datetime.datetime'> 2020-01-09 00:00:00
Try upgrading if you are using an outdated version of Peewee.如果您使用的是过时版本的 Peewee,请尝试升级。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.