我想从Swift的集合中检索所有文档,其中字段“ groupId” ==“ 31bc2501-7164-4f22-7b28-9f9005acbcf6”(一个GUID)
如果我使用Firebase文档ID,则可以:
即
CollectionReference reference = db.collection("chats/XIiOrtRiYmLtzz1tzG2u")
但是我想通过字段查询它。
我在Swift中看到这样的东西:
var query = db.collection("chats").whereField("groupId", isEqualTo: "31bc2501-7164-4f22-7b28-9f9005acbcf6")
但是它返回一个查询对象,我无法弄清楚如何“弹出”它来执行查询并向我返回一个集合(在线上的大多数示例似乎都使用不同且过时的语法来做到这一点,并且不要使用whereField)
是否有一种方法可以像第一个示例中一样查询内联的集合,但是使用除主键以外的其他字段? 也许我查询的集合不正确?
谢谢,感谢您的光临!
答案 0 :(得分:2)
来自Firebase documentation on getting multiple documents through a query:
db.collection("chats").whereField("groupId", isEqualTo: "31bc2501-7164-4f22-7b28-9f9005acbcf6")
.getDocuments() { (querySnapshot, err) in
if let err = err {
print("Error getting documents: \(err)")
} else {
for document in querySnapshot!.documents {
print("\(document.documentID) => \(document.data())")
}
}
}