Firebase 是否有办法将数据添加到firestore集合的父文档和子文档中?

Firebase 是否有办法将数据添加到firestore集合的父文档和子文档中?,firebase,flutter,google-cloud-firestore,Firebase,Flutter,Google Cloud Firestore,我正在为我的大学项目研究电子商务。我有一个“产品”的父集合,在“产品”集合中,我有不同公司名称的文档。在公司文档中,我创建了蔬菜、糕点等类别的集合 我想将地址键值对添加到公司名称文档中。在单个查询中。要立即执行此操作,我将使用此查询 await firestoreInstance .collection("Products") .document(_productCompany.toUpperCase()) .setData({"data&q

我正在为我的大学项目研究电子商务。我有一个“产品”的父集合,在“产品”集合中,我有不同公司名称的文档。在公司文档中,我创建了蔬菜、糕点等类别的集合

我想将地址键值对添加到公司名称文档中。在单个查询中。要立即执行此操作,我将使用此查询

await firestoreInstance
    .collection("Products")
    .document(_productCompany.toUpperCase())
    .setData({"data": ""}).then((value) => firestoreInstance
            .collection("Products")
            .document(_productCompany.toUpperCase())
            .collection(_productCategory)
            .document(_productCategory +
                " " +
                _productCompany +
                " " +
                _productName)
            .setData({
          "DownloadUrl": "$_downloadURL",
          "CategoryName": "$_productCategory",
          "CompanyName": "$_productCompany",
          "ProductName": _productName,
          "PricePerQuantity": _productPricePerQuantity,
          "Available": true,
          "itemQuantityToCart": 0
        }));

是否有一种方法可以在单个查询中完成此操作?

如果要更新两个文档(无论它们之间的关系如何),则需要分别更新它们。这没有捷径可走

如果您想以原子方式(同时)更新两个文档,那么您可以执行一个操作来同时提交这两个更改。但是您仍然需要生成两个文档引用,并指定这些文档应该包含的数据


你可以阅读更多关于这一点专门为颤振。批写入的入口点以该方法开始。

它在Firestore上会计为2次写入吗?批量使用后。因为旧查询写入了两次。写入的每个文档都计为1次写入。批处理和事务不会改变这一点。