【问题标题】:Firestore Querying a collection with a sub collectionFirestore 使用子集合查询集合
【发布时间】:2021-10-28 06:46:33
【问题描述】:

我被困住了,需要帮助。我想从我的 Firestore 数据库中检索数据并将其显示到我的 Firestore 回收器适配器。但我的问题是,我的查询只检索根集合之后的文档。

这是我的 Firestore 数据库的结构

  • 产品(系列)

    • 产品名称、价格(文档)

      • 照片(收藏)

        • image_url(文档)

这是我的查询

query = collectionReference.whereEqualTo("Product", Constants.PRODUCT_NAME);

我想要实现的是,还从单个文档中检索我的照片集合并将其显示到我的 Firestore 回收器视图。

【问题讨论】:

  • 正如 Huthaifa Muayyad 在他的回答中指出的那样,您必须执行两个单独的查询。 Firestore 中的所有查询都是浅的,它只能从运行查询的集合中获取项目。无法在单个查询中从顶级集合和子集合中获取文档
  • 不客气,帕特里克。

标签: java android google-cloud-firestore


【解决方案1】:

您需要运行两个单独的查询。

query = collectionReference.whereEqualTo("Product", Constants.PRODUCT_NAME);

之后,你就会知道DocumentID,你需要用这个docId来指向子集合,这是伪代码:

collectionReference.doc('ID from previous query').collection('Photos');

【讨论】:

    猜你喜欢
    • 2019-07-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-01-14
    • 2021-08-12
    • 1970-01-01
    相关资源
    最近更新 更多