2017-04-03 2 views
0

Ich habe eine Gruppe von Kommentaren für verschiedene Blogposts.Firebase - Filtern von Abfragedaten

Das Problem ist jetzt, dass jeder Kommentar in jedem Blogpost angezeigt wird.

Im die Daten mit

myref= FirebaseDatabase.getInstance().getReference().child("comments"); 

Aufruf, der alle Kommentare zurück.

Dies sind die Daten JSON

{ 
    "comments" : { 
    "-KgnRe9d5s471yDWVYBk" : { 
     "_id" : "56e35e39106a750e008c33b5", 
     "_blogID" : "56ba5f6a894eeb0e008c86c0", 
     "commentKey" : "-KgnRe9d5s471yDWVYBk",   
     "detail" : "test comment", 
     "user" : "john", 
     "votes" : 0 
    } 

Kennzeichnung mögen alle Kommentare zum Filtern von "_blogID"

Dank

Antwort

0

Sie eine Query wie diese verwenden: Query query = myref.child(commentKey).orderByChild("_blogID");

+0

Aber die ganze IDs (z. B. KgnRe9d5s471yDWVYBk) sind eindeutig. Wie frage ich alle Kinder dann nach _blogID? – ChrisM

+0

Ja, alle Schlüssel sind eindeutig, aber wenn Sie die 'push()' Methode verwenden, um diese eindeutigen kesy zu generieren, ist der Moment, in dem Sie diese Schlüssel wie folgt erhalten können: 'myref = FirebaseDatabase.getInstance(). GetReference () .child ("comments"). push(); 'und danach' String commentKey = myref.getKey() '. Dann können Sie commentKey in Ihrer 'query' verwenden. Ich hoffe es hilft! –

+0

Gibt es keine Möglichkeit, alle Schlüssel einzubeziehen und nach der blogID zu suchen? – ChrisM

Verwandte Themen