从具有ID的嵌套文档中检索数据

时间:2020-01-27 18:58:19

标签: javascript firebase google-cloud-firestore

我有一个名为' chartites '的集合的存储区结构,其中包含带有记录的类别。结构如下:

集合(慈善机构)->文档(“类别”)->集合(记录)->文档( ID )-> 字段(包含数据) enter image description here

我的问题是:

如何通过“单个”查询来获取给定ID的字段,而不查询每个类别(文档)。

即: 我想检索ID为:FC9tH5rABCsqh5kunMND(慈善类别“动物”的列表顶部)的记录(文档)的数据

我尝试这样做:db.collection('charities')。where('id','==','FC9tH5rABCsqh5kunMND')-但似乎无法实现这一目标。

2 个答案:

答案 0 :(得分:3)

不能。 Firestore查询很浅,这意味着它们仅考虑单个集合的文档。他们从不考虑子集合中的文档。如果您希望将文档放在子集合中,则每个子集合都将需要自己的查询。

答案 1 :(得分:1)

如果by-id是您访问数据的主要方式,则可以对其进行重组,以便按ID存储数据,并在每个ID中与慈善机构相关联的字段中进行存储。然后,您仍然可以通过查询类别字段包含动物的所有ID来获得有关“动物”的分类信息。