我的Firebase数据库
更具体地说,我有随机生成的子级(列表),我希望从那些随机生成的列表中获取键的字符串值。
例如,如果我想要照片URL地址,我想获取键“ PhotoURL:”的字符串值。
提前谢谢!
答案 0 :(得分:0)
这是从清单中获取子值的代码。
var ListArr = [ListModel]()
let ref = Database.database().reference().child("Listings")
ref.observe(.childAdded, with: { (snapshot) in
print(snapshot)
guard let dictionary = snapshot.value as? [String : AnyObject] else {
return
}
let Obj = ListModel()
Obj.UID = snapshot.key
Obj.PhotoURL = dictionary["PhotoURL"] as? String
self.ListArr.append(Obj)
}, withCancel: nil)
}
您可以设置模型类
class ListModel: NSObject {
var UID:String?
var PhotoURL:String?
}
答案 1 :(得分:0)
首先需要做的是import Firebase
,然后从Database类中调用一个函数,如下所示:
let ref = Database.database().reference().child("Listings")
您可以递归地调用child来深入您的树
//.child("Listings").child("SomeListing").child("PhotoURL")
然后调用observeSingleEvent从firebase接收值。 您的值存储在快照变量中
ref.observeSingleEvent(of: .value, with: { (snapshot) in
guard let listingsDictionary = snapshot.value as? [String: Any] else { return }
listngsDictionary.forEach({ (key, value) in
// Here you can iterate through it
})
}) { (err) in
print("Failed to fetch following listings:", err)
}