根据问题标题,如何将Python string
转换为Google App Engine db.TimeProperty
?
我试着这样做:
obj.time = strptime("10:00", "%H:%M")
但是我收到以下错误:
BadValueError:属性时间必须是时间,但是 time.struct_time(tm_year = 1900,tm_mon = 1,tm_mday = 1,tm_hour = 10, tm_min = 0,tm_sec = 0,tm_wday = 0,tm_yday = 1,tm_isdst = -1)
答案 0 :(得分:1)
我不熟悉(已取代的)db
文档,但NDB Cheat Sheet db.TimeProperty()
直接对应ndb.TimeProperty()
。来自ndb
的{{3}}:
有三种属性类型可用于存储与日期和时间相关的内容 值:
DateProperty
TimeProperty
DateTimeProperty
这些属于相应类的值(
date
, 标准Pythontime
模块的datetime
,datetime
)。最多 三者的一般是DateTimeProperty
,表示两者都是 日历日期和一天中的时间;其他人偶尔也有用 用于特殊目的仅需要约会(例如出生日期) 或只是一个时间(如会议时间)。由于技术原因,DateProperty
和TimeProperty
是其子类DateTimeProperty
,但你不应该依赖这种继承 关系(并注意它与继承不同datetime
定义的基础类之间的关系 模块本身)。
所以我写下来了:
obj.time = datetime.datetime.strptime("10:00", "%H:%M").time()