当前位置: 首页 > 知识库问答 >
问题:

从多个子集合中提取文档-Firebase[duplicate]

解飞语
2023-03-14

我正在为管理员创建一个与firebase集成的web应用程序,这个web应用程序被管理员用来监控用户从ionic开发的Android或iOS应用程序发布的帖子或评论。

我的问题是,是否可能获取特定用户评论的所有评论。我可以查询单个集合,但在本场景中,commentsDocument是一个子集合,我希望获取用户在所有post中的所有注释,以便进行监视。

共有1个答案

空枫涟
2023-03-14

可以查看firebase集合组查询

var commentsQuery = db.collectionGroup('comments').where('commentOwnerID', '==', userId);//userId - firebase id of the user who commented
commentsQuery.get().then(function (querySnapshot) {
    querySnapshot.forEach(function (doc) {
        console.log(doc.id, ' => ', doc.data());
    });
});

此外,您可能必须创建支持您的查询的索引,请检查console以获得创建索引的链接

 类似资料:
  • 在我的集合的SnapshotListener中,我使用以下命令循环遍历文档: 在 for 循环中的每个文档中,让我们称之为 ,我在 Cloud Firestore 上还有另一个文档集合。我想检索内子集合中的所有文档(每个文档只有一个字符串字段)。我能够做一个来获取本身,我用它来获取字符串字段,但我不知道如何获取其子集合中的文档。

  • 如何使用JavaScript获取Firebase Firestore子集合“userPosts”中的所有文档?你可以在下面的图片中看到我的数据库结构。 以下是我尝试过的: 这段代码应该做的是获取子集合“userPosts”中的文档。它应该进入集合“posts”中的每个文档,然后进入“userPosts”并获取该子集合中的每个文档。 第一次收集“帖子” 子集合“userPosts”

  • 在Firestore中,我有一个用户集合,在每个用户文档中存储一个名为favorites的集合,该集合包含标记为favorites(存储)的文档的ID 我可以采取另一种方法来获取两个集合并手动过滤它们,但我使用的是Firebase RecycerView适配器,它显示的所有数据都基于查询,这将使事情更加高效。 这样的结果是如何实现的呢?如果需要进一步的解释,请告诉我

  • 所以我有一个帖子集。在“post”集合中,我有另一个名为“likes”的集合。 所以我想同时从每个文档中获取每个集合,并在之后映射它们。有没有办法做到这一点? 因为在Firebase中,您只能从一个文档中获取集合,但我想从每个文档中获取每个集合。

  • 我正在使用Java开发一个Android应用程序,我使用firestore数据库,我有一个名为用户位置的集合,其结构类似于照片: 分贝 我的问题是,当一个用户改变他的位置或一个新用户进入一个已经存在的位置(其他用户有相同的位置)时,它会创建一个新文档(如在“oran, algerie”中)。当我添加新用户并更新文档时,我想使用,但问题是我无法以正常方式检索根集合的所有文档: 它返回null。我尝试