我在本地主机上使用Google App Engine。我在数据存储中有2000个实体Book
。我想删除第一个1900(键范围从1到1901)。我将如何从交互式控制台执行此操作?我正在使用ndb
而不是db
如何使用密钥从GAE数据存储中删除多个实体
也许有某种范围的功能。
例如,我尝试以下操作,但没有任何反应。
from myddb import Book
list= Book.gql("WHERE ID < 193")
for entity in list:
db.delete(entity)
编辑:
基于从@Lipis以下响应工作
from myddb import Book
from google.appengine.ext import ndb
book_keys = Book.query().fetch(keys_only=True)
ndb.delete_multi(book_keys)
但是,删除等一应俱全。我需要工作是Key
查询又名ID
像
book_keys = Book.query(Article._Key < 1901).fetch(keys_only=True)
ID是在模型中显式定义的Book实体的一个属性还是它在ndb中的ID,它等于旧数据库中的key_name? – Tkingovr 2013-02-13 09:27:58
而不是db.delete你应该使用key.delete() – Tkingovr 2013-02-13 09:33:59
你听起来很沮丧。挂在那里。如果您发现答案,请记得回传。 +1 – kasavbere 2013-02-13 18:38:53