首页 > 解决方案 > 在 Flutter 中查询 Firebase Firestore 子集合

问题描述

我正在查询我的 Firestore 数据库,如下所示:

final Query roasters = Firestore.instance
    .collection('retailers')
    .where('retail_category', isEqualTo: 'Coffee Roasters');

我收到了零售商集合中所有将“retail_category”设置为“Coffee Roasters”的文档的结果。

问题

相反,我想将retail_category 变成一个单独的集合,而是在retailer 字段中引用它(这将否定以下引用):

“retail_categories/hEN5fzNl2hEc2tEs05Wi”

我尝试了以下方法:

final Query roasters = Firestore.instance
    .collection('retailers')
    .where('retail_categories', isEqualTo: ' qretail_categories/hEN5fzNl2hEc2tEs05Wi');

这是我的 Firestore 配置:

零售商 零售商 零售类别 零售类别

标签: firebasefluttergoogle-cloud-firestore

解决方案


无法引用用于查询的集合之外的文档中的数据。出于这个原因,在需要在每个集合的查询中使用的文档之间复制数据是很常见的。如果您不想这样做,则必须对每个引用的文档进行单独的查询。


推荐阅读