首页 文章

查询不工作Firebase Swift

提问于
浏览
0

我有一个Firebase,其结构如下:

  • "zipcodes"

  • 12345

  • 1

  • "city":"test"

  • "state":"XX"

  • 98765

  • 2

  • "city":"test2"

  • "state":"AA"

  • 3

  • "city":"test3"

  • "state":"BB"

我试图通过用户的邮政编码查询我的数据库;但是,当我尝试查看它找到的快照时,它为空 . 这是我目前的代码:

func firebaseSearch(zipCode: String) {

    let conditionRef = FIRDatabase.database().reference().child("zipcodes")

    let query = conditionRef.queryEqualToValue(zipCode)

    query.observeSingleEventOfType(.Value, withBlock: {snapshot in

        print(snapshot.value)

        for child in snapshot.children {
            print(child)
        }

    })

}

当我运行代码时,我得到了这个:

(/zipcodes {
 ep = 12345;
 sp = 12345;
 })
 Optional(<null>)

我的数据库有大约77,000个条目,所以我担心迭代所有条目并试图找到具有我的zipCode值的子将花费大量时间,所以我试图使用查询功能来查看它是否更快 . 我感谢任何帮助,非常感谢!

1 回答

  • 1

    您不需要查询,请使用 .child(zipCode) 而不是 .queryEqualToValue(zipCode) . 这将返回预期的结果 .

    希望这可以帮助!!

相关问题