【发布时间】:2014-10-11 20:06:38
【问题描述】:
我正在实施一个基于 Google App Engine 的 Web 应用程序。 该应用程序使用 ndb,并且有两个实体(例如 A 和 B)通过 A 类模型中的此属性实现一对多关系
bObjects = ndb.KeyProperty(repeated=True);
我有一个 A (a1) 实例与 B (b1,b2,b3) 的三个实例相关 我正在尝试删除 b2。 为此,我试图以这种方式将其从与 a1 的关系中删除
a1.bObjects.remove(b2.key)
命令被执行但元素没有被移除。我做错了什么?
【问题讨论】:
-
只是要清楚,因为您没有在示例中显示它。你在
a1.bObjects.remove(b2.key)之后做a1.put()吗? -
太棒了!我总是要放它!谢谢!
-
太棒了,到时候我会回答的。
-
事实上我从 b2 得到 a1 就像 b2.aObject.get().bObjects.remove(b2.key) 并且我没有意识到我也必须做 b2.aObject.get( ).put()
标签: python google-app-engine google-cloud-datastore app-engine-ndb