firebase - 如何通过字符串字段从 Firestore 排序列表(如何解析为 int)
问题描述
我的颤振应用程序中有一个列表,我想按天对其进行排序,但是在 Firestore 中,我将“天”存储为字符串,并且我不能这样做orderBy("day")
.. 我怎么能int.parse()
在这个领域做一个并制作它对列表进行排序?
await databaseReference
.collection("events").doc('admin').collection('sodas').doc(year.toString()).collection(month.toString())
.orderBy("day")
Firestore 中的日期是 30、20、19、28 ......但它的格式是字符串
解决方案
Firestore 中的字符串值按其字典顺序排序,因此是:
- “1”
- “10”
- “11”
- “12”
- ...
- “18”
- “19”
- “2”
- “20”
- “21”
- ...
获得正确结果的两种方法是:
将数字存储为实际数值,以便 Firestore 对它们使用数字排序顺序。
将数字存储为字符串格式,当按字典顺序排列时,可以通过向左填充数字来提供所需的结果。例如,当用 填充时
"0"
:“01”
“02”
...
“09”
“10”
“11”
“12”
“13”
...
“18”
“19”
“20”
“21”
...
推荐阅读
- laravel - 在 react native 和 laravel 中使用 facebook 登录
- javascript - Material-UI 导入顺序更改样式
- angular - 在另一个对象中显示一个对象的数组的数据
- javascript - 我可以在 XSLT 中创建依赖下拉菜单而不一次加载所有内容吗?
- python - 将数据从 Access 数据库导出到 Python 代码
- jmeter - 如何在jmeter中分配不同时间的负载
- jakarta-ee - 是否有在 Java/JakartaEE 中引入反应式编程结构的建议?
- javascript - Javascript - 获取异步函数外部可用的数据
- asp.net-identity - 在现有的 asp.net mvc 项目上添加身份框架
- python - 哪个是用于从 Python 中的数据框中获取唯一项目的适当函数?