firebase - firebase 索引查询实现
问题描述
添加了下面提到的查询并在firebase中创建了索引,但我不知道自昨天以来发生了什么,它没有根据此查询显示数据,如果我删除它:-.where('age', isLessThanOrEqualTo:currentUser.ageRange['max'])
从下面的查询中显示数据,否则不显示数据。早些时候,这工作正常,没有问题。
我已经尝试过flutter clean但仍然没有成功,请帮助我,因为我想在项目中实现它。
query() {
if (currentUser.showGender == 'everyone') {
return docRef
.where('age', isGreaterThanOrEqualTo: currentUser.ageRange['min'])
.where('age', isLessThanOrEqualTo:currentUser.ageRange['max'])
.orderBy('age', descending: false).limit(docLimit);
} else {
return docRef
.where('editInfo.userGender', isEqualTo: currentUser.showGender)
.where('age', isGreaterThanOrEqualTo:currentUser.ageRange['min'])
.where('age', isLessThanOrEqualTo: currentUser.ageRange['max'])
.orderBy('age', descending: false).limit(docLimit);
}
}
解决方案
我相信这个问题可能是因为你试图分别运行两个范围查询。
您可能无法做到这一点,因为这是查询的限制之一。
您可以尝试在单个查询中包含两个比较,例如
.where("age",isGreater... : x, isLess..: y)
您可以在此处了解如何在 firebase 中进行查询: https ://firebase.google.com/docs/firestore/query-data/queries
推荐阅读
- ios - TableView Cell内的选择tableView - swift 3中的didSelectRowAt
- sql - 在 Teradata Studio Express 中禁用括号的自动完成
- python - 使用python读取带有特殊字符的CSV
- android - 升级到Android studio Bumblebee canary 4 throw java.lang.AbstractMethodError
- powershell - 如何让 netcat 服务器处理来自 Powershell 的上传文件?
- javascript - 更改 dropzone.js 和 rails 的错误文本
- python - matplotlib中二维函数的粒子群
- sql - WPF 和 Windowformapps 中的数据库
- excel - 从单元格中分离文本
- windows - Powershell在计算机上搜索特定描述