firebase - Firestore 查询子集合

标签 firebase google-cloud-firestore

我以为我读到您可以使用新的 Firebase Firestore 查询子集合,但我没有看到任何示例。例如,我通过以下方式设置 Firestore:

  • 舞蹈[集合]
    • 舞蹈名称
    • 歌曲[收藏]
      • 歌曲名称

我如何查询“查找songName == 'X'的所有舞蹈”

最佳答案

更新2019-05-07

今天我们发布了collection group queries ,这些允许您跨子集合查询。

因此,例如在网络 SDK 中:

db.collectionGroup('Songs')
  .where('songName', '==', 'X')
  .get()

这将匹配任何集合中的文档,其中集合路径的最后部分是“歌曲”。

您最初的问题是关于查找 SongName == 'X' 的舞蹈,但这仍然不可能直接实现,但是,对于每首匹配的歌曲,您可以加载其父歌曲。

原始答案

这是一项尚不存在的功能。它被称为“集合组查询”,允许您查询所有歌曲,无论它们包含哪个舞蹈。我们打算支持这一点,但没有具体的时间表。

此时的替代结构是使歌曲成为顶级集合,并使歌曲的舞蹈成为歌曲属性的一部分。

关于firebase - Firestore 查询子集合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54653829/

相关文章:

javascript - Firestore 网络无法到达 Firestore 后端

swift - ObserveSingleEventOfType(ChildAdded) 只返回一个快照 Firebase

android - 是否有必要从 Firebase 实时数据库中删除每个添加的监听器?

android - flutter 未定义类 'FirebaseFirestore'

javascript - Firebase 的用户数据结构

Firebase 一次性函数

javascript - 服务 worker 安装过程中的 Firebase 消息警告消息

firebase - Firestore 的集合组权限

swift - Firestore - 如果文档不存在,GetDocument() 会使应用程序崩溃

flutter - 从Flutter的下拉菜单中删除项目会导致错误