Ruby on rails 从ruby gem firebase实时数据库筛选数据
我的firebase实时数据库中有以下数据结构:Ruby on rails 从ruby gem firebase实时数据库筛选数据,ruby-on-rails,ruby,firebase,firebase-realtime-database,Ruby On Rails,Ruby,Firebase,Firebase Realtime Database,我的firebase实时数据库中有以下数据结构: {objects => { "69260"=> { "proposer_nickname"=>"william", "votes" => 2 }, "04690"=> { "
{objects =>
{
"69260"=>
{
"proposer_nickname"=>"william",
"votes" => 2
},
"04690"=>
{
"proposer_nickname"=>"john",
"votes" => 3
}
}
}
我使用以下ruby gem来查询Firebase:
我正试图通过其中一个字段(proposer\u昵称)进行筛选。
我的问题是:
firebase = Firebase::Client.new('https://<my_project>.firebaseio.com/objects', private_key_json_string)
response = firebase.get('', {'orderBy' => 'proposer_nickname', 'equalTo' => 'william' })
欢迎任何意见 我终于让它工作了。。。 感谢弗兰克·范·帕夫伦为我指出了规范。它让我走上了正确的方向 因此,如果有人想做同样的事情,你需要做的是:
- 别忘了在索引中添加字段,如问题底部所述
- 将您的查询放在下面(我的错误在引号中!):
希望它能为sombeody节省时间我不确定你从哪里得到的
order\u by
和equal\u to
名称,但是从这一点来看,Ruby gem似乎使用了orderBy
和equalTo
(这与Firebase REST API使用的相同)。我更新了我的问题。你是对的,但它没有更好的工作:(很高兴听到你终于工作了!
"objects": {
".read": true,
".write": "auth.uid != null",
".indexOn": ["proposer_nickname"]
}
response = firebase.get('', {:orderBy => '"proposer_nickname"', :equalTo => '"william"' })