dart 基于父文档的Flutter Firebase Firestore查询子集合

qv7cva1a  于 2023-05-11  发布在  Flutter
关注(0)|答案(1)|浏览(148)

我正在使用Flutter和Firebase Firestore,我想查询一个集合组,但我只想查询Firestore中特定文档的子级。
我尝试过查询所有的“父”文档,然后在它们上迭代,检查我正在寻找的条件,并使用特定的文档ID创建另一个Firestore查询,但这非常慢。
我有一个名为“Shops”的集合,在“Shops”中有一个名为“logoColour”的字段和一个名为“Customers”的子集合。每个“Customers”文档都有几个字段,但我感兴趣的是“height”
我想做的是为子集合“Customer”创建一个查询,其中Customer[height] > 5”,其中Shops[logoColour] ==“yellow”
我能找到的唯一类似的帖子是Firestore query subcollection and parent document,日期是2021年,在Typescript中
这在Flutter中可能吗?

jslywgbw

jslywgbw1#

Firestore只能过滤它返回的文档中的值。
因此,通过单个查询获得所需行为的唯一方法是将要过滤的值复制到每个客户文档中。
如果这是不可接受的,您确实需要首先查询父文档,然后为每个文档加载子集合文档--就像您目前正在做的那样。
另见:

相关问题