2012-08-14 28 views
6

basa en este docs https://developers.google.com/appengine/docs/python/ndb/entities#deleting_entities así, todavía estoy seguro de por qué no puedo hacer lo elimine en NDB:cómo eliminar la entidad NDB usando ID?

def get(self): 
    id = self.request.get("delete") 
    ndb.Key('category', id).delete() 

Sí sé cómo seleccionar utilizando Identificación

ndb.Key('category', id).get() 

pero su aún no funciona ...

key = ndb.Key('category', id).get() 
key.delete() 

éste también no trabajar:

category.key.delete() 

¿Algo no está bien?

Respuesta

12

Prueba esto:

ndb.Key(category, int(id)).delete() 

es necesario convertir el identificador de número entero con el fin de construir una tecla numérica (id) en lugar de una clave de nombre.

+0

¡funciona! ¡gracias! – zho

+0

Simplemente curioso, ¿no nos permite ndb tener identificadores de cadena? No está relacionado con la pregunta tal vez, y esto ya resolvió su problema. – 0xc0de

+0

@ 0xc0de, por supuesto, si quiere controlar la identificación, necesita pasar una cadena –

Cuestiones relacionadas