基本上,我的应用有基于位置的帖子,可以被赞成/反对。我需要构建一个查询,该查询返回位于指定区域的前 15 个投票帖子,这些帖子是在过去 24 小时内发布的。来自 sql 背景,我发现使用 JSON 格式和 firebase 内置的按顺序查询和过滤选项很难做到这一点。我意识到我很可能需要进行大量的客户端过滤,所以我想问一下 JSON 结构和查询格式将是什么来最小化客户端过滤。到目前为止,这是我的 JSON 格式的样子:
"posts" : {
"-KPFIsDbf3WUljWvBwi-" : {
"latitude" : 33.64114800203589,
"longitude" : -116.4236003651668,
"time" : 1.47129994542173E12,
"uid" : "wjXpBBJMBVPvRVG48fFkerAw6TD3",
"upvotes" : 0
},
我尝试使用 Geofire,但不幸的是,它似乎只能按区域查询,并且由于我想按区域和发布时间(除其他外)进行查询,因此使用 Geofire 无法很好地扩展。