我正在Google App Engine中使用NDB构建一个使用Google Endpoints和数据存储区的Web应用程序。每个登录的用户都有一组"观看的列表"这只是NDB的expando模型中的重复属性,如下所示:
类用户(ndb.Expando):
username = ndb.StringProperty()
email = ndb.StringProperty()
password = ndb.StringProperty()
overallRanking = ndb.IntegerProperty()
numRankings = ndb.IntegerProperty()
watchedListings = ndb.KeyProperty(modelListing,repeated=True)
如您所见,我正在存储modelListing实体的密钥。但是,当我删除modelListing时,我希望它自动删除在其watchedListings对象中具有该键的所有用户的键。这类似于SQL处理外键的方式。有没有办法在不通过数据库中的所有用户并搜索该密钥,删除它并执行put()的情况下执行此操作?
答案 0 :(得分:0)
我还尝试过这个功能。看起来你可以使用以下方法完成工作: https://developers.google.com/appengine/docs/python/ndb/entities?hl=nl#hooks