如何将数据添加到子集合

时间:2019-08-29 23:40:39

标签: swift google-cloud-firestore

我正在尝试使用Firestore建立购物清单。用户属于一个组。一个组有一个购物清单。购物清单中有商品。购物清单的路径可能像这样/groups/A11C1F3A/ShoppingListA11C1F3A/,其中A11C1F3A是groupId。

我遇到错误

*** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'FIRESTORE INTERNAL ASSERTION FAILED: Invalid document reference. Document references must have an even number of segments, but groups has 1'

据我所知,这个错误意味着我的数据模型一定有问题。我发现了this个问题,该问题的答案是

  

有效的集合路径将始终具有奇数个段;文档的有效路径,偶数。

这是我的方法

  func saveItemToDB(with itemName: String) {
        let db = Firestore.firestore()
        if let _ = Auth.auth().currentUser {
            let groupId = HomeViewController.groupId
            let groupRef = db.collection("groups").document(groupId).collection("ShoppingList" + groupId)    
            let data: [String: Any] = [
                "name" : itemName
            ]
            groupRef.document(itemName).setData(data)
        }
    }

我的收藏中的细分数是三个吗?我在这里看不到问题。

0 个答案:

没有答案