【发布时间】:2017-01-04 05:27:38
【问题描述】:
Firebase 数据库中的以下数据:
{
"schedule": {
"Week 1": {
"active": "true"
},
"Week 2": {
"active": "true"
},
"Week 3": {
"active": "false"
},
"Week 4": {
"active": "true"
},
...
}
}
我想检索所有只有 active 为 true 的 Weeks。 我正在这样设置 Firebase 参考:
ref = FIRDatabase.database().reference(withPath: "Schedule")
然后执行以下操作:
ref.observeSingleEvent(of: .value, with: { snapshot in
//
print("Count: ", snapshot.childrenCount)
for _ in snapshot.children {
print("\(snapshot.value)")
}
})
产生以下输出:
Optional({
"Week 1" = {
active = 1;
};
"Week 2" = {
active = 1;
};
"Week 3" = {
active = 0;
};
"Week 4" = {
active = 1;
};
...
}
有人可以建议我如何获得将 active 设置为 true 的几周,这需要加载到 string 类型的数组中:
var weeksActive = [String]()
【问题讨论】:
-
这在 Firebase 入门指南 Working With Lists 的过滤数据部分中进行了介绍。但是,旧的 Firebase 文档比当前的要好得多,因此请查看查询数据部分中的 Retrieving Data。它们已经过时了,但解释和示例会有所帮助。
标签: ios swift firebase swift3 firebase-realtime-database