按日期从Firebase检索数据

时间:2016-07-26 20:58:10

标签: ios swift firebase firebase-realtime-database

我的应用在Firebase中存储了聚会。每个聚会都有一个结束日期,该日期已转换为字符串并作为聚会的属性保存在Firebase中(参见图片)。当应用程序从Firebase检索数据时,它会将所有聚会提取到一个数组中,并在结束日期过去时过滤掉聚会。我试图找到一种方法来查询Firebase,它只会提取结束日期等于或大于当前日期的聚会。不需要过去具有结束日期的聚会,并且永远不会在应用程序上显示,此外它还会增加用于下载聚会的网络带宽。有没有人有关于如何从查询中排除聚会的任何解决方案/建议,以便我不必在客户端过滤掉聚会?enter image description here

1 个答案:

答案 0 :(得分:3)

Firebase在这里提供了一系列查询和限制功能:

https://firebase.google.com/docs/reference/ios/firebasedatabase/interface_f_i_r_database_query#a5d089e583013c7cdcd653f974e2cba56

如果我没有弄错的话,你应该能够构建一个有限的聚会查询

ref.child("meetups").queryOrderedByChild("endDate").queryStartingAtValue(currentDate).queryEndingAtValue(currentDate).observeEventType(.ChildAdded, withBlock: { (snapshot) -> Void in
   //do something     
})

修改

您希望将startDate和endDate字段存储为时间戳