【问题标题】:How do I access the result of a returned query in firestore (swift)?如何在 firestore (swift) 中访问返回查询的结果?
【发布时间】:2018-05-10 08:20:43
【问题描述】:
我有一个小聊天应用程序,我只想查询我正在和谁聊天。
我在 https://firebase.google.com/docs/firestore/query-data/queries 阅读了 Firestore 文档
他们在那里展示了一些例子,例如:
let query = citiesRef.whereField("state", isEqualTo: "CA")
在我的应用程序中,我的查询是:
let query = model.defaultStore?.collection("users").document(myid).collection("chats").whereField("chatWith", isEqualTo: userII)
我想要满足此查询的文档的 ID。
只是不知道如何获得它。
谢谢。
【问题讨论】:
标签:
swift
google-cloud-firestore
【解决方案1】:
我现在不在电脑前,但是,在快速谷歌之后,我相信这就是你所追求的:
db.collection("users").document(myid).collection("chats").whereField("chatWith", isEqualTo: userII).getDocuments() { (querySnapshot, err) in
if let err = err {
print("Error getting documents: \(err)")
} else {
for document in querySnapshot!.documents {
print("\(document.documentID) => \(document.data())")
}
}
}
您基本上只需将getDocuments() 添加到查询的末尾,并使用一个闭包来处理结果。
希望有帮助