【问题标题】:Flutter Firebase How to make Sequential QueryFlutter Firebase 如何进行顺序查询
【发布时间】:2020-01-25 17:24:41
【问题描述】:

我正在开发一个论坛应用程序。我的 Firebase 数据库中有两个与用户信息和主题信息相关的集合。

forumTopics 集合中,我保留了每个论坛主题的数据。

当我进行 Firebase 查询时,我想获取该主题的数据以及与 topicAuthorUID 值对应的用户的数据。

比如我想从userData集合中topicAuthorUID值为XXX的用户的文档中提取姓名、头像信息。

我用来获取主题的查询:

Future getForumTopics() async { 
final result =
  await Firestore.instance.collection('forumTopics').getDocuments();
return result.documents;
}

但是通过这个查询,我无法获得主题所有者的姓名和头像。

综上,我想打印主题信息和用户名和头像信息。

我需要做什么查询才能做到这一点? 请帮我。 谢谢。

【问题讨论】:

    标签: firebase flutter dart google-cloud-firestore


    【解决方案1】:

    当我进行 Firebase 查询时,我想获取该主题的数据以及与 topicAuthorUID 值对应的用户的数据。

    你不可能一次完成。 Firestore 中的查询很浅,只能从运行查询的集合中获取元素。除非您使用 collection group query,否则无法在单个查询中从两个集合中获取文档,但情况并非如此,因为您项目中的两个集合具有不同的名称。

    例如我想从userData集合中topicAuthorUID值为XXX的用户的文档中提取姓名、头像信息。

    因此,要解决这个问题,需要两个单独的查询。第一个是获取论坛主题。获得该文档后,根据topicAuthorUID 属性,您应该执行第二个查询以获取用户的姓名和头像。

    我需要做什么查询才能做到这一点?

    实际上不是一个查询,而是两个。并回答您的问题:

    Flutter Firebase 如何进行顺序查询

    没有办法按照你说的方式进行顺序查询。需要两个查询。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-12-09
      • 2021-07-24
      • 1970-01-01
      • 1970-01-01
      • 2021-06-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多