繁体   English   中英

有选择地将数据从一个 Firestore 集合复制到另一个

[英]Selectively copy data from one Firestore collection to another

我有一个 Firestore 集合,它下面还有更多的子集合和字段。 这就是结构的样子(firestore 非常糟糕的例子)

(collection) company
   - (field) client_list 
   - (field) revenue 
   - subcollection1
   - subcollection2

如果某些客户在它的列表中,我想将其中的一些文档复制到另一个集合 (copy_of_company)。 目前,我编写了代码来复制文档中的各个字段,但无法弄清楚如何复制子集合

我不会经常执行此操作,也许一个月一次。 我怎样才能完成这种深度但有选择性的复制?

目前没有一两行解决方案。

query = (comapny_ref.where(u"client_list", u'array_contains', u'ABCorp'))
companies = [c for c in query.get()]
for company in companies:
  copy_of_comapny_ref.document(company.id).set(company._data)
  subcollection1_ref = comapny_ref.document(company.id).collection(u'subcollection1').get()
  for subcollection1 in subcollection1_ref:
    copy_of_comapny_ref.document(conv.id).collection(u'subcollection1').\
                        document(subcollection1.id).set(subcollection1._data)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM