我有一个简单的查询,可以在帖子相关帖子下推荐用户。
await this.$fireStore.collection('posts')
.limit(6).where('tags', 'array-contains', this.post.tags[0]).get().then(querySnapshot => {
问题是,这也会读出帖子本身(因为它也包含标签),有没有办法查询没有特定 DocID 的帖子,而不浪费一个Where ergo,需要一个完整的新查询?
最佳答案
Firestore 不提供查询不等式(即不等于)的可能性,请参阅此 SO 帖子:Firestore: how to perform a query with inequality / not equals
我了解您希望最多获得 6 个“兄弟”帖子。您可以进行相同的查询,限制为 7 个文档,并在前端中过滤结果:
通过循环文档列表并将其 Id 与当前文档 Id 进行比较,您将遇到两种情况:
- 当前文档位于查询返回的 7 个文档之内:将其从列表中删除
- 当前文档不在查询返回的 7 个文档之内:随机删除一个文档。
关于javascript - 忽略 Firestore 中的 DocID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53690939/