从多个子集合中获取文档 - Firebase [重复]
Posted
技术标签:
【中文标题】从多个子集合中获取文档 - Firebase [重复]【英文标题】:Fetch documents from multiple subcollections - Firebase [duplicate] 【发布时间】:2020-04-23 23:09:39 【问题描述】:我正在为管理员创建一个带有 firebase 集成的网络应用程序,管理员使用这个网络应用程序来监控用户从 ionic 开发的 android 或 ios 应用程序发布的帖子或 cmets。
我正在使用 Firebase firestore,以下是数据库设计
posts/postsDocument/comments/commentsDocument
.
这里的comments
是postsDocument 的子集合,其中包含特定帖子的所有cmets。 postDocument
和 commentsDocument
还包含用户的 Firebase uid。
我的问题是,是否可以获取特定用户评论的所有 cmets。我可以查询单个集合,但在这种情况下 cmetsDocument 是一个子集合,我想获取用户在所有帖子中的所有 cmets 以进行监控。
【问题讨论】:
感谢 Frank 的编辑,现在干净多了。下次我会尝试格式化问题 【参考方案1】:你可以查看firebase collection group query
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());
);
);
另外,您可能需要创建支持您的查询的索引,请查看控制台以获取创建索引的链接
【讨论】:
这对我有用,我没有调查的组查询。感谢凯德以上是关于从多个子集合中获取文档 - Firebase [重复]的主要内容,如果未能解决你的问题,请参考以下文章