如何从谷歌App引擎数据存储中删除实体?

use*_*160 5 google-app-engine google-cloud-datastore

我在Google App Engine数据存储区中创建了一个实体.

如何删除此实体?

Bri*_*nna 4

您尚未指定您正在使用哪个 API。

在 Python 中就像这样

db.delete(modelId)
Run Code Online (Sandbox Code Playgroud)

在Java中它应该是这样的(我还没有测试过):

PersistenceManager pm = PMF.get().getPersistenceManager();

MyModel entity = pm.getObjectById(MyModel.class, modelId);
pm.deletePersistent(entity);

pm.close();
Run Code Online (Sandbox Code Playgroud)

  • Python 示例不正确 - 'key' 是保留字段名称,因此不能用作属性。它应该过滤另一个属性,或者使用 MyModel.get 通过键获取。在前一种情况下,诸如 db.delete(MyModel.all().fetch(500)) 之类的批量删除效率更高。 (2认同)