Wie zu Lesen, Kind oder filter FB die Daten nach Ihrem Schlüssel Wert im swift-ios
Ich bin neu sowohl swift und FB , ich versuche alle Artikel und Preis gedruckt, mit diesem code möchte ich in der Lage sein zu drucken ..
Ausgabe :
- Roten Stuhl 100
- Sofa-Bett 120
var ref = Firebase(url: "https://jeanniefirstapp.firebaseio.com")
var item1 = ["name": "Alan Turning", "item" : "Red Chair", "price": "100"]
var item2 = ["name": "Grace Hopper", "item": "Sofa Bed" , "price": "120"]
var item3 = ["name": "James Cook" , "item": "White Desk", "price": "250"]
var item4 = ["name": "James Cook" , "item": "Mattress Cal King", "price": "100"]
override func viewDidLoad() {
super.viewDidLoad()
var usersRef = ref.childByAppendingPath("users")
var users = ["item1": item1, "item2": item2, "item3" : item3 , "item4" : item4 ]
usersRef.setValue(users)
}
ref.queryOrderedByChild("price").observeEventType(.Value, withBlock: { snapshot in
if let price = snapshot.value["price"] as? Int {
println("\(snapshot.key) price at \(price) Dollars ")
println(snapshot.key)
}
})
Du musst angemeldet sein, um einen Kommentar abzugeben.
Da Sie möchten, führen Sie den gleichen code für jedes Element, die Sie verwenden möchten
.ChildAdded
:Sehen die Seite zum abrufen von Daten in der FB-Anleitung für iOS-Entwickler für weitere Informationen und Beispiele.
Update
Landete ich mit deinem code in einem lokalen xcode und sehen, gibt es zwei Probleme. So alle drei kombiniert:
hörst du auf die
.Value
Ereignis, aber Ihr block ist der Umgang mit einem einzigen Element zu einem Zeitpunkt. Lösung:hörst du auf die
.Value
Ereignis auf top-Niveau, aber Sie sind das hinzufügen der Elemente unterusers
. Lösung:du testen, ob der Preis ist ein
Int
sind, sondern indem Sie Sie als Zeichenfolgen. Lösung:Mit diesen änderungen, wird der code druckt diese Ergebnisse für mich: