查找 Firestore

时间:2021-08-01 22:43:06

标签: java firebase kotlin google-cloud-firestore

我知道这是一个有点奇怪的问题,但是如何在我创建新文档时访问 Google Firebase 为我的文档生成的唯一(自动)ID。例如这是我的代码

val postCollections = db.collection("posts")
val newPost = Post(text, user, currentTime)
postCollections.document().set(newPost)

我怎么知道为这个“newPost”文档生成的 id 是什么,因为我想在我的代码中使用该 id,同时我不想发送自定义 id,因为它不会是唯一的< /p>

1 个答案:

答案 0 :(得分:2)

val postCollections = db.collection("posts")
val newPost = Post(text, user, currentTime)
postCollections.document().set(newPost)

您可能已经发现,.set() 返回 Promise <void>

但是您忽略了 .set() 仅对 DocumentReference 进行操作 - 这是您从 postCollections.document() 获得的。 DocumentReference 具有属性 idpath - .document() 创建了一个新的、唯一的 documentId。

所以:

val postCollections = db.collection("posts")
val newPost = Post(text, user, currentTime)
val newRef = postCollections.document()
newRef.set(newPost)

现在您可以将文档 ID(和路径)用作 newRef 的属性。

https://firebase.google.com/docs/reference/js/firebase.firestore.DocumentReference