HTML5   发布时间:2022-04-27  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了Firebase – iOS SDK – 按子值过滤大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在尝试使用Firebase来设置一个新项目,而我正在努力使用非关系数据库查询系统.我已阅读指南,特别是有关数据结构的指南.
这是我的用例:我必须处理一些产品,每个产品都有一个名称一个家庭,这个也是一个实体.
我在下面创建了结构,试图遵循指南和示例.

{
    "families" : [ {
      "name" : "easy","products" : [ 10,11 ]
    },{
      "name" : "ir33","products" : [ 12,13 ]
    } ],"products" : {
      "10" : {
          "family" : 0,"name" : "Matita"
      },"11" : {
          "family" : 0,"name" : "Penna"
      },"12" : {
          "family" : 1,"name" : "Gomma"
      }
    }
}

鉴于一个家庭,我想选择那个家庭的所有产品.
我的第一个解决方案是访问系列,检索ID数组,然后执行请求(每个ID一个).它有效,但这种方法可能会导致大量请求.
有没有更好的方法来获得它?例如,我正在尝试这个,但它不起作用:

ref.child("products").queryorderedByChild("family").queryEqualToValue("0",childKey: "family").observeSingleEventOfType(.Value,withBlock: { snap in
    print("snap \(snap)")
})

但它总是打印Snap(产品)< null>.

updatE

我可以使用此查询访问给定系列的产品:

ref.child("products").queryorderedByChild("family").queryEqualToValue(0).observeSingleEventOfType

便说一句,现在我在运行测试时收到此警告:

在此先感谢您的帮助!

解决方法

那这个呢:

ref.queryorderedByChild("family").queryEqualToValue(0).observeSingleEventOfType(.Value,with: { snap in  
    print("snap \(snap)")
})

有关更新问题的更新:

将其添加到firebase控制台中的数据库规则中(另请参见屏幕截图).别忘了点击“发布”按钮:

"products": {
  ".indexOn": "family"
}

Firebase – iOS SDK – 按子值过滤

大佬总结

以上是大佬教程为你收集整理的Firebase – iOS SDK – 按子值过滤全部内容,希望文章能够帮你解决Firebase – iOS SDK – 按子值过滤所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。