我正在尝试从Firebase快照检索数据作为我的自定义数据模型“ RadioModel”
class RadioModel {
var title : String?
var image: String?
var link: String?
var description: String?
init(title: String, image: String, link: String, description: String) {
self.title = title
self.image = image
self.link = link
self.description = description
}
}
我想做的事情在下面,但是菜单给了我一个零值
mydb = Database.database().reference().child("radioStaions")
mydb?.observe(.value, with: { (snapshot) in
//print(snapshot)
let menu = snapshot.value as! RadioModel
self.radioMenu.append(menu)
})
将提供任何帮助。
答案 0 :(得分:0)
至少,您错过了snapshot.children
上的循环。现在,您正在观察radioStaions
,它为您提供了一个包含多个广播电台的快照。要进入各个广播电台,您需要像这样循环遍历snapshot.children
:
mydb?.observe(.value, with: { (snapshot) in
for station in snapshot.children.allObjects as! [DataSnapshot] {
print(station.key)
let desc = station.childSnapshot(forPath: "description").value as! String
print(desc)
}
})
您的代码可能还有其他问题,但这肯定是破坏它的原因。