2017-06-22 4 views
0

GQL permet des requêtes d'ancêtres sans kind (https://cloud.google.com/appengine/docs/standard/python/datastore/queries#kindless_ancestor_queries) où vous pouvez interroger en une fois à la fois un ancêtre et tous ses descendants. Autant que je sache, l'ancêtre est toujours retourné en premier, suivi de tous les descendants? Cependant, je ne trouve rien qui confirme cela. Donc, ma question: est-ce toujours le cas que l'ancêtre est retourné en premier suivi par tous les descendants? Et y a-t-il de la documentation qui confirme ce point?Est-ce que les requêtes d'ancêtres sans kind retournent toujours l'ancêtre en premier?

La raison pour laquelle je demande est que je peux garder mon code plus simple si je sais que l'ancêtre est toujours le premier.

Répondre

1

Ceci est un détail d'implémentation qui peut changer dans le futur. Ne vous fiez pas à cette commande, car cela entraînera probablement la rupture de votre code dans le futur.

+0

Merci beaucoup, il est utile d'avoir cette confirmation. Il y a des données dans l'ancêtre que je peux utiliser pour le distinguer des enfants. Je me demandais simplement s'il y avait une règle qui me permettrait de minimiser le traitement nécessaire. –

+0

Np. Par curiosité, voulez-vous traiter l'ancêtre séparément, ou voulez-vous vraiment l'ignorer? –

+0

Nous voulons obtenir les données de l'ancêtre, y compris un champ qui contient une liste de toutes les données des enfants. C'est bien de pouvoir faire tout cela en une seule requête. En outre, je me demandais s'il ne serait pas utile d'écrire dans la documentation que l'on ne devrait pas compter sur le fait que l'ancêtre est justement le premier dans les résultats et qu'il pourrait ne pas le faire à l'avenir. –