Ich habe versucht, durch meine Firebase-Datenbank mit ihren Leitfäden abzufragen, aber ich kann die Ergebnisse nicht angemessen zurückgeben. Wenn jemand darauf hinweisen kann, was ich falsch mache oder korrigieren, wird es sehr hilfreich sein.Was ist der genaue Weg von Firebase (3.2.0) Abfragen mit Swift (2.0)?
Hier sind meine Code
let ref = DataService.dataService.BASE_REF
let myQuery = (ref.child("testing")).queryOrderedByKey()
let MyQuery1 = (ref.child("testing")).queryOrderedByValue()
let MyQuery2 = (ref.child("testing")).queryEqualToValue("Alphaa")
let MyQuery3 = (ref.child("testing")).queryEqualToValue("Alphaa", childKey: "Alpha")
myQuery.observeSingleEventOfType(.Value, withBlock: {
snapshot in
print("Ordered By Key")
print(snapshot.value)
})
MyQuery1.observeSingleEventOfType(.Value, withBlock: {
snapshot in
print("Ordered by Value")
print(snapshot.value)
})
MyQuery2.observeSingleEventOfType(.Value, withBlock: {
snapshot in
print("Value Equal")
print(snapshot.value)
})
MyQuery3.observeSingleEventOfType(.Value, withBlock: {
snapshot in
print("Ordered by Value & Key")
print(snapshot.value)
})
Hier ist das Ergebnis Bildschirm Beide Reihenfolge von Schlüssel und Wert es nicht aussortieren Schnipsel.
Optional({
Alpha = Gammaa;
Alright = 24;
Beta = Betaa;
Delta = Deltaa;
Epsilon = Epsilonn;
Eta = Etaa;
Gamma = Alphaa;
Iota = Iotaa;
Lets = 3;
Okay = 1;
Theta = Thetaa;
Zeta = Zetaa;
beep = 4;
boop = 11;
})
Beide Wert Equal & Geordnet nach Wert & Key geben Sie mir Optional (null)
JSON Tabellenwerte
"testing" : {
"Alpha" : "Gammaa",
"Alright" : 24,
"Beta" : "Betaa",
"Delta" : "Deltaa",
"Epsilon" : "Epsilonn",
"Eta" : "Etaa",
"Gamma" : "Alphaa",
"Iota" : "Iotaa",
"Lets" : 3,
"Okay" : 1,
"Theta" : "Thetaa",
"Zeta" : "Zetaa",
"beep" : 4,
"boop" : 11
}
Ich versuche, gleiche Werte zurückgeben oder sie vom Server sortieren Ende stattdessen auf dem Client-Ende.
können wir Sie geben die Json, auf dem Sie testen? es wird einfacher für uns zu sehen .. (die firebase tree) – ismael33
Oh sorry ich habe vergessen, das aufzustellen, ich habe das jetzt getan :) – Lobo
Nun, um zu beginnen, sind die Abfragen nicht wirklich eingerichtet, um Ihre Daten zu entsprechen Struktur. Außerdem wird queryEqualToValue ("Alphaa") kein Ergebnis haben, da es keine 'testenden' Knoten gibt, die gleich 'Alphaa' sind - Sie könnten jedoch nach/testen/Alpha ist gleich Gammaa mit einer tiefen Abfrage. Wenn Sie das erwartete Ergebnis für jede Abfrage klar darlegen können oder was Sie erreichen möchten, können wir besser eine Antwort formulieren. – Jay