2012-06-02 6 views
5

Quería preguntar si hay una manera directa y eficiente de obtener el hijo de una entidad principal.Manera eficiente de obtener la entidad/claves hijo dado un padre

Estoy modelando una relación follower/following (como Twitter). Entonces, yo tengo un modelo de usuario y un modelo de mensaje. Tengo un seguidor y un modelo siguiente que tienen un modelo de usuario como padre.

Por lo tanto, cada vez que un usuario escribe un mensaje (o diga un tweet), todos sus seguidores deberían poder obtenerlo. En este caso necesito averiguar quiénes son los seguidores del usuario (que envía un mensaje).

Cualquier ayuda es muy apreciada

+0

¿Querías llamar a los modelos 'Seguidos' y' Siguiendo'? Además, este es probablemente un mal ejemplo para el uso de ancestros, ya que los tipos padre e hijo tienen una relación de muchos a muchos (por ejemplo, al eliminar un 'seguido 'no se elimina su' siguiente'). –

Respuesta

0

Otro método para encontrar a los hijos de una entidad es crear una instancia de un objeto ndb.Query, pasando ancestor a su constructor:

joe = Followed.get_by_id('joe') 

query = ndb.Query(ancestor = joe.key) 

followers = query.fetch() 

Esto también proporciona una manera más general para encontrar a los niños de una entidad sin requerir que su Kind se conozca de antemano.

Cuestiones relacionadas