why*_*ent 4 android firebase firebase-realtime-database
根据我的Android应用程序中的日期对一些数据进行排序.它存储如下:
Map<Year, Map<Month, Map<Day, Stuff>>>
Run Code Online (Sandbox Code Playgroud)
年,月和日只包含整数.这不能保存到Firebase数据库,因为它是一个具有非字符串键的映射.我想把它弄平并把它变成Map.对数据结构的巨大妥协,因为它允许前一个数据不允许(也不应该)允许的数据.但是,Date不是String.我试过这样的事情:
String key = String.valueOf(date.getTime());
Run Code Online (Sandbox Code Playgroud)
然后使用数据结构:
Map<String, Stuff>
Run Code Online (Sandbox Code Playgroud)
也不起作用,它似乎使用了String在Firebase数据库中不能拥有的非法字符.那么,我将如何进行这项工作呢?很感激帮助.
小智 8
我建议你创建一个如下所示的结构:
...
date:{
day:1,
month:04,
year:2016,
timestamp:12345679979 //in milliseconds
}
Run Code Online (Sandbox Code Playgroud)
这样,您可以轻松索引安全规则中的时间戳,通过Child执行查询并使用start At和endAt方法使用过滤器,您可以在其中定义定义范围的时间戳
| 归档时间: |
|
| 查看次数: |
5034 次 |
| 最近记录: |