作者热门文章
- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我的数据库结构是
appname:
Tasks:
childbyautoid1:
"name": "myname"
"age": "18"
childbyautoid2:
"name": "yourname"
"age": "20"
我想知道如何获取所有子节点的名称和年龄的所有数据,因为我不知道 childbyautoid
我在写
Database.database().reference().child("Tasks").observe(.childAdded){ (dss) in
if let value = dss.value as? [String: AnyObject]{
let name = value["name"] as? String
let age = value["age"] as? String
print(name)
print(age)
}
最佳答案
你可以像这样遍历每个 child :
// Create a reference to the database path
let ref = Database.database().reference(withPath: "Tasks")
// You can keep your database synced
ref.keepSynced(true)
ref.observe(.value, with: { (snapshot) in
// Checking if the reference has some values
if snapshot.childrenCount > 0 {
// Go through every child
for data in snapshot.children.allObjects as! [DataSnapshot] {
if let data = data.value as? [String: Any] {
// Retrieve the data per child
// Example
let name = data["name"] as? String
let age = data["age"] as? String
// Print the values for each child or do whatever you want
print("Name: \(name)\nAge: \(age)")
}
}
}
})
关于ios - 如何从 iOS 中的 firebase 中的子节点获取数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55256424/
我是一名优秀的程序员,十分优秀!