我似乎无法根据时间戳选择某些内容。行为有点奇怪,<和=符号似乎并不意味着我期望它们。
""" A site message """ class Message( db.Model ) : # from/to/ a few other fields subject = db.StringProperty() body = db.Text() # this is the field i'm trying to use sent = db.DateTimeProperty( auto_now_add=True )
当我编写像
这样的GQL查询时select * from Message where sent = '2009-09-14 01:00:02.648000'
(在数据存储区中有一条特别是时间戳的消息)
它让我没有回来。
如果我尝试
select * from Message where sent < '2009-09-14 01:00:02.648000'
它只是给了我所有这些。当我尝试&gt;签字,它只是给了我一个。
这里发生了什么,如何根据时间戳选择?
答案 0 :(得分:5)
不使用字符串“替换”日期时间!它只是不起作用......
请参阅the docs:DateTimeProperty
对应datetime.datetime值。 import datetime
,将您心爱的字符串转换为datetime.datetime
个实例(例如,通过调用strptime
方法),使用THOSE实例进行比较 - 当然,从此过上幸福的生活! - )