如何使firestore在写入时创建嵌套对象作为子集合?

时间:2018-01-01 02:03:28

标签: firebase google-cloud-firestore

考虑下面的代码。我希望这段代码在集合测试下创建一个名为items的子集合,但是这些项目在测试集合中添加了一个数组字段。注意,这是针对firestore而不是firebase实时db。

data = {
"first": "new",
"born": 1815,
"items": [
  {
    "field": 2
  }
 ]
};
db.collection("test").add(data)

1 个答案:

答案 0 :(得分:3)

您的data对象是单个对象,当您使用您提供的代码将单个对象存储为文档时,该对象将占用该单个文档。

如果要将数据写入子集合,则必须单独编写,对于要在其下面进行子集合的API非常清楚:

db.collection("test")
    .document("doc_id")
    .collection("items")

或:

db.collection("test/doc_id/items")

换句话说,如果您要编写任何两个文档,您必须在不同位置执行两次添加/更新/创建调用。您无法通过一次调用创建两个文档。