1
我想編程刪除數據存儲區中的所有數據。如何獲取NDB數據存儲區中的型號列表
爲了做到這一點,我需要遍歷所有模型,併爲每個模型刪除所有模型的實體。
那麼如何以編程方式獲取NDB數據存儲區中所有模型的列表?
我想編程刪除數據存儲區中的所有數據。如何獲取NDB數據存儲區中的型號列表
爲了做到這一點,我需要遍歷所有模型,併爲每個模型刪除所有模型的實體。
那麼如何以編程方式獲取NDB數據存儲區中所有模型的列表?
使用metadata。我需要自己一樣的,所以這裏是所有型號的完全刪除功能。這應該適用於每個型號幾千個實體:
from google.appengine.ext import ndb
from google.appengine.ext.ndb import metadata
kinds = metadata.get_kinds()
for kind in kinds:
if kind.startswith('_'):
pass # Ignore kinds that begin with _, they are internal to GAE
else:
q = ndb.Query(kind=kind)
keys = q.fetch(keys_only=True)
# Delete 1000 entities at a time.
for i in range(len(keys)/1000 + 1):
portion = keys[i*1000: i*1000+1000]
ndb.delete_multi(portion)