我试图在firebase实时数据库中存储某些特定信息。我的数据库结构如下所示:
{
"contacts" : {
"-KdD1f0ecmVXHZ3H3abZ" : {
"email" : "ksdsd@sdsd.com",
"first_name" : "John",
"last_name" : "Smith",
"organization_id" : 1
},
"-KdG4iHEYjInv7ljBhgG" : {
"email" : "superttest@sds213123d.com",
"first_name" : "Max1",
"last_name" : "Rosse13131313l",
"organization_id" : 1
},
"-KdGAZ8Ws6weXWo0essF" : {
"email" : "superttest@sds213123d.com",
"first_name" : "Max1",
"last_name" : "Rosse13131313l",
"organization_id" : 1
}
}
}
我需要能够像这样的SQL示例一样指定条件:
SELECT * FROM contacts WHERE organization_id = :id LIMIT :start, :end
有没有办法在数据库中使用Ruby或至少他们的REST API?
答案 0 :(得分:0)
解决方案可分为两个步骤。
步骤1)如果尚未完成,则必须更新firebase数据库中的规则。
{
"rules": {
"read": "auth !=null",
"write": "auth !null",
"REPLACE_WITH_ROOT_NODE_NAME": {
"contacts": {
"indexOn": ["organization_id"]
}
}
}
}
步骤2)从firebase数据库中获取数据。其余的API请求应该是这样的
https://app-name.firebaseio.com/REPLACE_WITH_ROOT_NODE_NAME/contacts.json?auth=REPLACE_WITH_DATABASE_PASSWORD&orderBy="organization_id"&equalTo="REPLACE_WITH_ORGANIZATION_ID"&LimitToFirst=N