我在Firebase中存储了用户配置文件,其中包含一个键“Pricing”和一些保存为整数的值。我也有没有那个钥匙的档案。
我执行:
usersReference = Database.database().reference(fromURL: "https://someRef")
.child("users")
.queryOrdered(byChild: "Pricing")
.queryEnding(atValue: pricingToSearch)
.observe(...)
但是,查询结果总是同时显示没有该键的配置文件。我怎样才能把他们排除在搜索范围之外呢?
最佳答案
您只告诉查询生成器按子“Pricing”对数据进行排序,并且“pricingToSearch”的最后一个有效值是pricingToSearch。您没有给它任何关于第一个有效值的提示。根据documentation
Children with a nil value for the specified child key come first.
如果您只添加
queryStarting(atValue: 0)
所以
usersReference = Database.database().reference(fromURL: "https://someRef")
.child("users").queryOrdered(byChild: "Pricing")
.queryStarting(atValue: 0)
.queryEnding(atValue: pricingToSearch)
.observe(...)
关于ios - Firebase查询显示错误数据,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/50096651/