将两个名称相同的独立文档上载到Firebase



我希望能够在Firebase中添加两个具有相同名称的不同文档。现在,如果我尝试这样做,第一个文档就会被覆盖。这些文档具有不同的值。这就是我现在的补充:

let batch = db.batch()
// update listCounter
let userRef = Firestore.firestore().collection("users").document(userID)
batch.updateData(["wishCounter": counter + 1], forDocument: userRef)
// save wishlist with properties
let wishRef = db.collection("users").document(userID).collection("wishlists").document(wishListName).collection("wünsche").document(wish.name)
batch.setData(["name": wish.name, "link": wish.link, "price": wish.price, "note": wish.note, "wishlistIDX": selectedWishlistIdx, "wishCounter": counter, "imageUrl": ""], forDocument: wishRef)
batch.commit { (error) in
if let error = error {
Utilities.showErrorPopUp(labelContent: "Wunsch konnte nicht gespeichert werden", description: error.localizedDescription)
}
}

应始终创建wishName。我不知道更多的代码是否有帮助,但如果有,请告诉我。找不到任何关于这方面的信息,所以我很高兴得到每一个帮助!

两个文档不可能在同一集合中具有相同的ID。ID在集合中必须是唯一的。我建议重新思考您的数据库模型,并想出一种不需要重复ID的方法来对数据进行建模。通常,您接受addDocument()创建的随机ID,并根据字段值查询匹配的文档。

最新更新