从ruby gem firebase实时数据库过滤数据



我的firebase实时数据库中有以下数据结构:

{objects => 
{
"69260"=>
{
"proposer_nickname"=>"william", 
"votes" => 2
},
"04690"=>
{
"proposer_nickname"=>"john", 
"votes" => 3
}
}
}

我使用以下ruby gem来查询Firebase:https://github.com/oscardelben/firebase-ruby

我正试图通过其中一个字段(proposer_昵称(进行筛选。所以我的问题是:

firebase = Firebase::Client.new('https://<my_project>.firebaseio.com/objects', private_key_json_string)
response = firebase.get('', {'orderBy' => 'proposer_nickname', 'equalTo' => 'william' })

问题是,如果我这样做,我会得到所有的对象。不将筛选器应用于子字段为"proposer_昵称"="william"的筛选器

我还添加了一个索引,如下所述:为Firebase安全规则添加索引:

"objects": {
".read": true,
".write": "auth.uid != null",
".indexOn": ["proposer_nickname"]
}

欢迎任何想法!

我终于开始工作了。。。感谢Frank van Puffelen为我指出规格。它让我朝着正确的方向前进。

因此,如果有人想做同样的事情,下面是你需要做的:

  • 不要忘记在索引中添加您的字段,如问题底部所述
  • 将您的查询如下(我的错误在引号中!(:
response = firebase.get('', {:orderBy => '"proposer_nickname"', :equalTo => '"william"' })

希望它能为悲观的节省时间

最新更新