有两个父母,每个父母各有两个孩子。如何检索" sex"的所有数据。
这是我的代码。
ref.child("Doctor").observeSingleEventOfType(.Value, withBlock: { (snapshot) in
if let result = snapshot.children.allObjects as? [FIRDataSnapshot] {
for child in result {
print("Here 1")
print(child)
let gender = child.value!["sex"] as? String
print("Here 2")
//print("Sex")
print(gender)
}
} else {
print("no results")
}
}) { (error) in
print(error.localizedDescription)
}
当我打印性别的值时,它显示 nil 值。
答案 0 :(得分:1)
您正试图跳过代码中的某个级别。您可以监听根节点的值,然后遍历其子节点。这将为您提供节点Msm...
和eqn...
的快照。如果您在这些节点内部进行检查,则它们都没有子属性sex
。
要解决此问题,请在代码中再添加一个循环以进入推送ID(以-K
开头的键):
ref.child("Doctor").observeSingleEventOfType(.Value, withBlock: { (snapshot) in
if let result = snapshot.children.allObjects as? [FIRDataSnapshot] {
for child in result {
for child2 in child.children {
let gender = child2.value!["sex"] as? String
print(gender)
}
}
} else {
print("no results")
}
}) { (error) in
print(error.localizedDescription)
}