Google app engine 使用key.id()删除ndb实体

Google app engine 使用key.id()删除ndb实体,google-app-engine,google-cloud-datastore,app-engine-ndb,Google App Engine,Google Cloud Datastore,App Engine Ndb,我有要删除的实体的密钥id,但是当尝试使用get_by_id删除实体时,它没有删除实体(它没有做任何事情) 数字id(我假设它是一个数字,而不是一个字符串)存储在“key”get data中: d = car_database.Car() ident = self.request.get('key') d.get_by_id(ident).delete() 此实例中的id为:5659313586569216 感谢您的帮助这是错误的。请看有关删除实体的文档--您应该做的事情非常清楚 在你的情况下

我有要删除的实体的密钥id,但是当尝试使用get_by_id删除实体时,它没有删除实体(它没有做任何事情)

数字id(我假设它是一个数字,而不是一个字符串)存储在“key”get data中:

d = car_database.Car()
ident = self.request.get('key')
d.get_by_id(ident).delete()
此实例中的id为:5659313586569216


感谢您的帮助

这是错误的。请看有关删除实体的文档--您应该做的事情非常清楚

在你的情况下,你应该

ident = self.request.get('key')
d = car_database.Car.get_by_id(ident)
if d:
    d.key.delete()
请注意,
get\u by\u id
实际上是一个classmethod,因此不需要在
Car
的实例中实例化即可使用它


delete
键的一种方法,而不是
模型的方法

使用
long(ident)
来获取key@brentwashburne很好,除非它们的id是数字字符串;-)