【问题标题】:How to get document key in Firestore如何在 Firestore 中获取文档密钥
【发布时间】:2021-08-18 18:01:53
【问题描述】:

我正在尝试将我现有的 Firebase 实时数据库迁移到 Firestore 并更新我的移动应用程序中的 api 调用。我是 Firestore 的新手,需要一些指导。我正在尝试使用此功能在我的数据库中获取用户:

        Firestore.firestore().collection("users").getDocuments { snapshot, _ in
            guard let documents = snapshot?.documents else { return }
            users = documents.map({ UserCollection(dictionary: $0.data()) })
        }

我想获取用户的 UID,使用实时数据库我总是会创建一个这样的 let 值:

guard let uid = snapshot.key else { return }

我知道 firestore 有所不同,但我不确定如何使用新的 firestore 收集方法为我的用户获取 UID。这是我的 Firestore 集合对用户的外观示例。它的设置类似于用户 -> UID -> 用户信息。 关于如何获取用户的 UID 的任何建议?

【问题讨论】:

    标签: ios swift google-cloud-firestore


    【解决方案1】:

    要获取文档 ID,请使用 DocumentSnapshotdocumentID 属性,如 reading multiple documents 上的文档所示:

    db.collection("cities").whereField("capital", isEqualTo: true)
        .getDocuments() { (querySnapshot, err) in
            if let err = err {
                print("Error getting documents: \(err)")
            } else {
                for document in querySnapshot!.documents {
                    print("\(document.documentID) => \(document.data())")
                }
            }
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-09-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-11-26
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多