我的数据模型
{
"channels":{
"channel_key_0":{
"creator":"pqr",
"name":"Channel-1",
"participant":{
"id_1":"Jack",
"id_2":"Harry"
}
},
"channel_key_1":{
"creator":"xyz",
"name":"Channel-2",
"participant":{
"id_3":"Jerry",
"id_2":"Harry"
}
}
}
}
从上面给出的结构我想获取只有参与者有值"id_1": "Jack"
的频道。
我是Firebase数据库的新手。需要帮助来编写此查询。我尝试了一些事情FIRDatabase.database().reference().child("channels").queryOrdered(byChild: "participant").queryEqual(toValue: "Jack", childKey: "id_1")
,但给了我空数据。
欢迎结构改进。我的想法是通过应用这种结构来建立个人聊天。
答案 0 :(得分:0)
尝试这样。
let ref = FIRDatabase.database().reference().child("channels")
ref.queryOrdered(byChild: "participant/id_1").queryEqual(toValue: "Jack")
.observeSingleEvent(of: .value, with: { snapshot in
print(snapshot)
})