我想查询我的数据,以便得到timeStamps在我想要的timeStamps范围内的对象。
我的JSON数据是:
"-KHbFGKIyefgWKEmlkY1" : {
"createdAt" : 1463094941,
"customer" : "user1",
"professional" : "professional1",
"service" : "service2",
"startsAt" : 1470070000,
"status" : "WaitingForApproval"
}
我的查询代码:
let minimumDesiredTimeStamp = 1470000000
let maximumDesiredTimeStamp = 1480000000
ref.queryOrderedByChild("startsAt")
.queryStartingAtValue(minimumDesiredTimeStamp)
.queryEndingAtValue(maximumDesiredTimeStamp)
.observeSingleEventOfType(.Value, withBlock: { (snapshotOfChildrenWhichStartsAtTimeStampRange) in
})
问题是查询永远不会跳转到闭包中。 如果使用当前的Firebase无法实现,您能否就如何实现这一目标提出建议?
注意:目前,我通过仅使用 queryOrderedByChild 和 queryStartingAtValue 进行查询然后过滤其开头的对象来解决问题在Swift数组的过滤方法的帮助下,时间超出了我的范围。
NOTE2 :当我再次使用硬编码值尝试代码时,我意识到查询确实有效。所以我似乎错误地识别了问题和其他导致查询没有跳进闭包的东西。 所以记住:结合 queryOrderedByChild 查询子值。 queryStartingAtValue 。 queryEndingAtValue 有效!