Articles of app engine ndb

¿Qué tan eficiente es Google App Engine ndb.delete_multi ()?

Estoy trabajando en algo para borrar mi base de datos de ~ 10,000 entidades, y mi plan es ponerlo en una tarea que elimine 200 a la vez usando ndb.delete_multi() y luego se vuelva a llamar de forma recursiva hasta que no quede ninguna entidad. Por ahora, todavía no tengo la recursión, así que podría […]

¿Cómo puedo saber si ndb.Model.get_or_insert creó una nueva entidad o tiene una existente?

Para la siguiente función (rota), quiero devolver True si la entidad fue creada o actualizada, y False caso contrario. El problema es que no sé si get_or_insert() obtuvo una entidad existente o insertó una. ¿Hay una manera fácil de determinar esto? class MyModel(ndb.Model): def create_or_update(key, data): “””Returns True if entity was created or updated, False […]

Siguiendo las referencias de tipos desconocidos en NDB

Estoy en el proceso de escribir mi primer servicio web RESTful sobre GAE y el tiempo de ejecución de Python 2.7; Comencé a usar la nueva API ndb de Guido. Sin embargo, no estoy seguro de cómo resolver un caso particular sin la función de referencia inversa implícita de la API de db original. Si […]

¿Cómo eliminar todas las entidades para el modelo NDB en Google App Engine para python?

Tengo una clase de modelo ndb: class Game(ndb.Model): gameID = ndb.IntegerProperty() gameName = ndb.StringProperty() ¿Hay alguna forma de eliminar rápidamente todas las entidades almacenadas en la base de datos para esta clase? Algo como Game.deletAll()

¿Cuál es la forma correcta de obtener la página anterior de resultados con un cursor NDB?

Estoy trabajando para proporcionar una API a través de GAE que permitirá a los usuarios avanzar y retroceder a través de un conjunto de entidades. He revisado la sección sobre cursores en la página de documentación de Consultas NDB , que incluye un código de ejemplo que describe cómo avanzar hacia atrás a través de […]

Implementación efectiva de una relación de uno a muchos con Python NDB

Me gustaría conocer su opinión acerca de la implementación efectiva de la relación uno a varios con Python NDB. (por ejemplo, Persona (una) a Tareas (muchas)) En mi entendimiento, hay tres maneras de implementarlo. Utilice el argumento ‘padre’ Uso de propiedad estructurada ‘repetida’ Utilice la propiedad de la clave ‘repetida’ Por lo general, elijo una […]

El método ndb to_dict no incluye la clave del objeto

Estoy aprovechando el método to_dict de ndb para convertir las propiedades de un objeto en un dict de python. De todo lo que puedo decir, este método no incluye la clave del objeto o el elemento principal en el dictado según la documentación: https://developers.google.com/appengine/docs/python/ndb/modelclass#Model_to_dict Sin embargo para mi situación necesito la llave para estar en […]

motor de aplicaciones de Google python: cómo extender la clase de usuario ndb

Estoy usando los puntos finales de la nube de Google y quiero poder extender la clase de User para que una llamada a get_current_user devuelva un objeto AppUser con mis propias propiedades adicionales. class AppUser(–?–): # what should i put here gcm = ndb.StringProperty() def send_notification(self): # do something with gcm … pass ¿Cómo puedo […]

Almacenar datos de canciones, artistas y álbumes en App Engine

Necesito almacenar información sobre artistas, álbumes y canciones en Google App Engine para un proyecto en el que estoy trabajando. La información son metadatos tomados de un directorio de archivos MP3 (que utilizan Python) que deben enviarse a App Engine para mostrarlos a los usuarios. Junto con los metadatos, será necesario almacenar la ruta de […]

Usando Key en NDB para recuperar una entidad

Tengo esta estructura: libros que tienen capítulos (ancestro = libro) que tienen páginas (ancestor = capítulo) Para mí está claro que, para buscar un Capítulo por ID, necesito el libro para buscar por consulta ancestral. Y hoy he aprendido que si tengo todas las claves, puedo recuperar directamente la entidad sin necesidad de obtener primero […]