Ich möchte prüfen, ob ein Objekt mit einer bestimmten Eigenschaft auf einem Wert vorhanden ist.Überprüfen Sie, ob in Firebase ein Objekt mit einer bestimmten Abfrage vorhanden ist.
Hier ist ein Beispiel, was auf Firebase meine Daten aussehen könnte:
object: {
object-one: {
id: "something"
}
}
Und nun möchte ich ein Objekt mit einer ID holen, der nicht existiert:
let objectsRef = FIRDatabase.database().reference().child("object")
let query = objectsRef.queryOrderedByChild("id").queryEqualToValue("something else")
query.observeSingleEventOfType(.Value, withBlock: { (snapshot) in
// Never get's called
})
Da es ist kein Eintrag mit id = "something else"
der Abschluss wird nie aufgerufen werden. Aber wie soll ich wissen, ob es nicht wegen Internetproblemen aufgerufen wird oder nur weil dieses Objekt wirklich nicht existiert?!?
Wissen Sie immer den Objekt-Eins-Schlüssel? versuchen, mehrere Artikel zu erhalten, die mit diesem Wert übereinstimmen? Oder nur einen? – Ymmanuel
Grundsätzlich würde ich gerne wissen, dass es mindestens einen Artikel mit einer bestimmten ID gibt. Die ID wäre die UID des angemeldeten Benutzers – Georg
Ich habe gerade q Quick-Test, das '.Value'-Ereignis feuert für mich auf einem nicht vorhandenen Knoten. In diesem Fall ist 'snapshot.exists()' falsch. Sind Sie sicher, dass Sie Leseberechtigung haben? Siehe http://stackoverflow.com/questions/37403954/the-read-failed-permission-denied-error-in-firebase/37404053#37404053 –