我使用的设置方法如下:
admin.firestore()
.collection('threads')
.doc(threadId)
.collection('posts')
.doc(postId)
.set(data);
执行以下操作,但它会生成另一个具有完全相同 id 的文档,并且没有数据(只有其中的子集合),而不是向原始文档添加子集合。
id 为斜体的文档不包含任何数据,而是一个子集合(具有正确的文档)。
我在这里做错了什么,如何确保我实际现有的文档得到更新?
我还应用了相同的方法在我的线程集合(db.collection('threads').doc(newThreadId).set(data)
)中创建文档,并且工作得像一个魅力,创建和更新现有文档。
最佳答案
如果您的代码仍然按照您的预期读取和写入文档数据,无论您在控制台中看到什么,那么恭喜您 - 您在 Firebase 控制台中发现了一个错误。您的代码或 SDK 不太可能出现任何错误。
我建议contacting Firebase support并提交一份错误报告,其中包含您重现此情况所采取的步骤。
关于javascript - 在 Firestore 中创建子集合会生成两个具有相同 id 的文档(而不是更新预先存在的文档),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60086057/