在我的Python AppEngine应用程序中,我有一个ndb类,我正在运行MapReduce作业,以便删除一些不再需要的旧对象。
课程如下:
class UserModel(ndb.Model):
is_backup_object = ndb.BooleanProperty(default=False)
etc.
MapReduce作业如下:
from mapreduce import operation as op
# Note: userobject is an instantiation of UserModel
def mapreduce_update_userobject(userobject):
# This will remove "backup" userobjects from the database, while leaving
# "normal" userobjects alone
if userobject.is_backup_object:
yield op.db.Delete(userobject)
当我运行MapReduce作业时,我想要删除许多userobject
(is_backup_object = True
),并且即使is_backup_object value
是True
,也不会删除其中一些对象operation.db.Put
。
问题:
operation.db.Delete
和{{1}},以便与NDB对象一起使用?答案 0 :(得分:4)
回答你的问题:
operation.db.Put
并且ndb
模型没问题。db
和ndb
是一样的。您遇到的似乎没有被删除的实体的问题可能是由于多种原因造成的。以下是一些: