我是Firebase的新手,在过去的两天里,我一直试图找出如何在我的数据库上执行简单搜索而没有任何成功。
我想对所有频道的儿童进行搜索。例如,我想搜索是否有名为Klx0N4pxsBHGVkhYuY0
的频道。我试试
queryEqual(toValue: "Klx0N4pxsBHGVkhYuY0")
但没有运气。
非常感谢您的时间和帮助。
答案 0 :(得分:0)
您所要做的就是观察该路径,如果没有数据,snapshot.value
将为零。
let ref = FIRDatabase.database().reference().child("channels").child("Klx0N4pxsBHGVkhYuY0")
ref.observeSingleEvent(of: .value, with: { (snapshot) in
if let value = snapshot.value as? Dictionary<String,Any> {
// There is data, so it exists
print(value)
} else {
// There is no data, so it doesn't exist
}
})
答案 1 :(得分:0)
如果您只想“搜索是否有名为Klx0N4pxsBHGVkhYuY0的频道”,您可以这样做:
let ref = FIRDatabase.database().reference().child("channels")
ref.observeSingleEvent(of: .value, with: { (snapshot) in
if snapshot.hasChild("Klx0N4pxsBHGVkhYuY0") {
// yes, it is
} else {
// no, it isn't
}
})
希望它有所帮助。