【发布时间】:2013-01-03 20:28:48
【问题描述】:
我正在使用 GAE、Datastore、Python 2.7,并且是第一次使用祖先在数据存储中创建/更新条目。在这里,我试图查看Level_2_Headings 数据存储中是否有任何条目/行,如果没有,则创建一个新条目/行。如果确实存在,则更新描述。我收到了这个错误——Level_2_Headings 的数据存储是空的,所以它应该是空的,以便我可以添加新条目,但是,我在查询 q2 对象时遇到错误,我在其中使用祖先属性 - 关于为什么会出现这种情况的任何想法,因为我期望只返回一个空对象,因为它在数据存储中不存在?一如既往地感谢您的帮助。
if q:
q2 = Level_2_Headings.ancestor(q.key()).filter("name2 =",heading2).get()
if q2:
q2.description2 = description2
q2.put()
else:
#new level 2 being added to ds
new_2 = Level_2_Headings(parent=q2, name2=name2, description2=description2, heading_type=heading_type)
new_2.put()
message="Added NEW category entry to level 2"
【问题讨论】:
标签: python google-app-engine datastore ancestor