【发布时间】:2016-06-03 19:35:20
【问题描述】:
作为 firebase 的新手,我试图在这个简单的用例中模仿一种“where 子句”请求来检索用户的钱包:
User
48bde8f8-3b66-40bc-b988-566ccc77335c
email: "toto@acme.com"
username: "userTest1"
UserWallet
F4PvtvNT2Z
coins: 26
someList
elemet1
elemet2
user: "48bde8f8-3b66-40bc-b988-566ccc77335c"
首先我尝试像这样编写我的请求:
Firebase root = new Firebase("https://myApp.firebaseio.com/");
Firebase ref = root.child("UserWallet");
Query query = ref.equalTo("48bde8f8-3b66-40bc-b988-566ccc77335c", "user");
结果为空,所以我写了这个查询:
Query query = ref.orderByChild("user").equalTo("48bde8f8-3b66-40bc-b988-566ccc77335c", "user");
结果再次为空。检索钱包的唯一方法是使用以下查询:
Query query = ref.orderByChild("user").equalTo("48bde8f8-3b66-40bc-b988-566ccc77335c");
那么在使用“equalTo()”之前,我是否必须始终使用 en“orderByChild()”查询?
那么,查询“equalTo(String value, String key)”与“equalTo(String value)”相比的目的是什么,因为只有第二个可以正常工作?
【问题讨论】:
标签: java android firebase firebase-realtime-database