Firebase如何一次性检索文档集合以及每个文档的子集合?

时间:2020-03-21 20:13:46

标签: google-cloud-firestore

我正在使用Angular和Firestore来包含一组用户“项目”,每个用户“项目”可能具有与该项目相关联的多个“预算”

我想要的是一个项目列表,以及每个项目的预算列表

我想在页面上看到的东西

Project A
      budget 1 
      budget 2
   Project B
     budget c 
     budget d
     budget e
   Project C
     ...

文档结构化,每个项目都有自己的预算集合。

我可以想到多种可能效率低下的方法来执行此操作,首先阅读项目列表,然后迭代项目以检索每个预算集合,但是似乎我应该能够做到这一点一口气。

如果可能的话,通常的做法是什么? 。

1 个答案:

答案 0 :(得分:0)

不可能。 Firestore中的查询很浅-您一次只能读取单个集合(或collection group)中的文档,在此情况下都不是。如果您的文档分布在多个集合中,则必须进行多次查询。

如果必须能够在一个查询中执行此操作,则所有文档应位于同一集合中,或者在子集合中都具有相同的字符串ID。