【问题标题】:Using Firestore, can you update and add to a sub-collection using a single update call?使用 Firestore,您可以使用单个更新调用更新并添加到子集合吗?
【发布时间】:2018-10-23 00:20:42
【问题描述】:

我看到有一个示例调用 update() 并使用 firestore 更新嵌套字段。你能做类似的事情来更新并添加到子集合吗?

例如我们将这个例子从最喜欢的对象哈希更改为子集合

var frankDocRef = db.collection("users").doc("frank");
frankDocRef.set({
    name: "Frank",
    favorites: { food: "Pizza", color: "Blue", subject: "recess" },
    age: 12
});

frankDocRef.set({
    name: "Frank",
    favorites.add({ food: "Pizza"}), // I know this is probably the wrong syntax
    age: 12
});

我会创建一个批处理写入还是一个事务,因为它分别跨越单个文档和一个子集合文档?

【问题讨论】:

    标签: javascript firebase google-cloud-firestore


    【解决方案1】:

    Firestore 不提供 API 以通过对文档引用的 set() 或 update() 的一次调用来更新多个文档(无论它们位于何处)。

    如果您想自动更新多个文档,您应该使用batch write。如果您需要在更新文档之前读取文档的值(用于增加计数等操作),您只需要一个事务。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-08-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-03-27
      相关资源
      最近更新 更多