【发布时间】:2020-03-22 18:21:20
【问题描述】:
我想根据用户输入的标签查询 Firestore 中的一些帖子。每当用户提交帖子时,用户也会随之提交标签。我当前的数据结构如下所示:
postId: {
tags: {
"firebase": true,
"angular": true,
"cats": false
}
}
但是,上面的数据结构很难查询。我不能使用 arrayContainsAny 函数,必须下载所有标签并检查每个标签/键是否为真,然后返回帖子。但是,如果我将标签存储为数组:
postId: {
tags: {
0: "firebase",
1: "angular",
2: "cats"
}
}
我可以使用类似 postsCollection.whereField("tags", arrayContainsAny: tagsArray) 的 firestore 函数进行快速查询。
将标签存储为数组是否更高效或可扩展?
提前致谢!
【问题讨论】:
标签: firebase data-structures google-cloud-firestore