如何在 Cloud Firestore 中获取文档的 UID Swift

How to get UID of document in Cloud Firestore Swift

目前,我的应用正在遍历 firebase 中集合中的所有文档,但是我需要知道数据来自哪个 UID,以便稍后添加。有没有办法找到这个,如果没有,我可以采用哪些其他替代方法来实现这一目标。非常感谢您的帮助。

下面是一个如何用 id 得到 posts 的例子:

let docQuery = this._db.collection('communityProgramPost')


const response = await docQuery.get();

const posts = response.docs.map(doc => {
  const post = doc.data();
  post.id = doc.id;
  return post;
});

请注意,您在 post 上明确创建了一个 ID 属性,并为其分配了 doc.id 中的值。简单地返回 doc.data() 不会让你得到 id!

getting all documents in a collection 上查看此文档中的示例:

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())")
            }
        }
}

您正在寻找 DocumentSnapshot 对象的 documentID 成员。