2009-06-15 16 views
4

J'utilise l'API de bas niveau dans Google App Engine pour Java et je souhaite obtenir toutes les entités enfants d'une entité parente particulière:Comment obtenir toutes les entités enfants dans Google App Engine (API de bas niveau)

Étant donné le graphique suivant:

Parent (1) 
| 
+ --- Child A (2) 
| | 
| + --- Child B (3) 
| 
+ --- Child A (4) 

Je veux une liste comme les suivantes

[Child A (2), Child B (3), Child A (4)] 

Voici ma meilleure tentative:

Entity pe = new Entity("parent"); 

Entity c1 = new Entity("childA", pe.getKey()); 
Entity c2 = new Entity("childB", c1.getKey()); 
Entity c3 = new Entity("childA", pe.getKey()); 

// storage code left out for brevity 

Key parentKey = KeyFactory.createKey(null, "parent", 1); 

// According to documentation this should work (but does not) 
PreparedQuery q = datastore.prepare(new Query(parentKey)); 

Répondre

3

J'ai découvert qu'il s'agit d'un bogue connu dans le serveur de développement local. Lors du téléchargement sur Google, cela fonctionne bien

+0

Est-ce un bug connu? Y a-t-il un lien sur le bug tracker? –

+0

Avez-vous trouvé un correctif pour ce problème? Parce que je développe aussi quelque chose sur GAE, et j'en ai marre de mettre à jour la course toutes les quelques secondes !!! – plutonium1991

0

getKey() ne serait pas une méthode, pas une propriété (ent.getKey(), pas ent.getKey?

De même, n'est-ce pas parentKey le même que pe.getKey()?

+0

Merci, j'ai corrigé la faute de frappe. En ce qui concerne pe.getKey(), j'ai seulement le numéro d'identification quand la requête est réellement effectuée, donc j'ai pensé que j'inclurais comment j'ai obtenu la clé. –