在Swift 4中,字段为X的Firebase中获取文档

时间:2018-10-05 18:37:47

标签: swift firebase google-cloud-firestore

我想从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)

是否有一种方法可以像第一个示例中一样查询内联的集合,但是使用除主键以外的其他字段? 也许我查询的集合不正确?

谢谢,感谢您的光临!

1 个答案:

答案 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())")
        }
    }
}
相关问题