2017-06-23 12 views
0
"news" : { 
    "-KnLRSIOyD7HgldFGty" : { 
     "caption" : "some grounds", 
     "content" : "some contents", 
     "created_on" : 1498246403444, 
     "newspaper_id" : "-KnLPu2N5039ZbqS", 
     "status" : false, 
     "thumbnail" : "thumbnail/1498254125498", 
    }, 
} 


"newspapers" : { 
    "-KnLRSIOyD7HgldFGty" : { 
     "logo" : "logo/1498245996906", 
     "paper_name" : "NewsOnline" 
     }, 
} 

Ich möchte Firebase filtern, um so etwas zu tun. mDatabaseRef.child("news").orderByChild("newspaper_id").equalTo(id).orderByChild("status").equalTo(false); Da mehrere orderBy() Ausnahme in Firebase auslösen, was ist der andere Weg, um den Filter zu erreichen.Zeile in FirebaseRecyclerAdapter überspringen

Antwort

0

Derzeit unterstützt Firebase nur eine einzige Bestellung pro Abfrage.

Also, wenn Sie die Ergebnisse auf mehr als eine Eigenschaft (2 Abfrage in Ihrem Fall) filtern oder bestellen möchten, müssen Sie entweder die zusätzliche Filterung (oder Bestellung) clientseitig in Ihrem Android-Code oder Sie tun Ich muss ein eigenes Indexierungsschema entwickeln, das die Eigenschaften kombiniert.

In Ihrem Fall empfehle ich Ihnen ein neues Kind newspaperId_status Namen hinzufügen, die den Wert als Verkettung beider Werte wie folgt zu erreichen:

newspaperId_status: -KnLPu2N5039ZbqS_false 

Auf diese Weise können Sie alle newspappers abfragen, die den Status von false haben .

Ich hoffe, es hilft.

Verwandte Themen