firebase - 将集合设置为子集合
问题描述
我想知道是否有更直接的方法将集合设置为新文档中的子集合。我目前的方法是:
- Get
CollectionA
,将用作子集合 - 创建一个新的参考
DocA
- 设置一些数据到
DocA
- 创建一个新的
CollectionB
参考DocA
- 使用 a
batch()
和循环CollectionA
,batch(set, CollectionA.doc.data())
在每个文档上使用CollectionA
batch.commit()
将所有文档提交CollectionA
到CollectionB
有没有更简单的方法来实现这一点?
喜欢:
DocA.collection('CollectionB').set(CollectionA)
我尝试了一些与此类似的方法,但CollectionA
最终生活在CollectionB
. 而不是所有的文档都CollectionA
变成CollectionB
.
解决方案
没有 API 可以将文档从一个集合复制到另一个集合。您必须将文档读取给客户端,然后将它们写入目标集合。
我认为没有比批量复制它们更快的方法了。请注意,一个批处理最多可以包含 500 个写入操作,因此您可能必须执行多个。
推荐阅读
- firebase - 如何保存用户数据
- python-3.x - 成对字符串和整数的切片列表
- php - isset($_GET['edit']) 之后的代码不起作用
- postgresql - 使用 psql 脚本将 jsonb 逗号分隔值转换为 json 对象
- scala - 从 Scala 中的元组列表创建数据框
- jquery - 我想从 API 中获取某些结果并将其显示到我的页面上
- react-native - 在 React Native Paper 中更改 TextInput 的文本颜色
- typescript - 设置 mat-option 值反应形式
- vue.js - 在整个 Vue 组件中使用变量?
- google-apps-script - 如何根据 Google AppMaker 中的表格字段填充下拉列表