Pregunta

Tengo una vista de tabla con datos que publico en la base de datos del motor de la aplicación. Cada vez que elimino una entrada en la tabla, también quiero eliminar el elemento en la base de datos del motor de la aplicación. ¿Cómo sé qué entrada eliminar?

Estaba pensando en esto:

para cada elemento que guardo en la tienda GAE, hago una referencia a un modelo con el ID de dispositivo exclusivo para el iPhone. por cada artículo que guardo en la tienda GAE, inserto un UUID para iphone db & amp; aplicación motor db.

Así que mi consulta sería algo como esto, por ejemplo:

del item where unique device id = ####
and item UUID = ####

No quiero iniciar sesión en el motor de aplicaciones, por eso estoy usando la ID de dispositivo única.

Mi única preocupación es el rendimiento, GAE tiene que buscar la identificación del dispositivo y el UUID, ¿no sé si esto será un problema?

La mejor solución sería si pudiera eliminarlo con su db.Key (), pero no sé cómo hacerlo, porque cuando publico los datos en GAE no sé qué clave generó.

¿Alguien podría darme algún consejo?

¿Fue útil?

Solución

El enfoque que sugiere es razonable. Si especifica el UUID como su nombre clave, puede eliminarlo directamente. Para crear una entidad con un nombre de clave, haga:

MyEntity(key_name=a_string, ...)

Para eliminar una entidad por nombre de clave (sin buscarla primero), haga:

db.delete(db.Key.from_path("MyEntity", a_string))

No es necesario tener un UUID y una ID de dispositivo; el UUID es suficiente para garantizar la exclusividad de todos los dispositivos.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top