【发布时间】:2019-06-07 10:44:20
【问题描述】:
我需要实现一个 Firebase 好友请求系统。而且它不是一个正常的友谊系统。所以我有一个用户列表。每个用户都有一个“分数”字段。 并且用户应该能够向得分最高的用户发送请求。 并且不允许重复请求。
为此,我必须使用“orderBy(“score”)”查询得分最高的用户。但问题是我无法通过这种方式找到他们是否已经是朋友。
friends = {
"userId 1": {
"userID 2": true,
"userId 4": true,
"userId 5": true,
"userID 15": true
},
"userId 2": {
"userID 1": true,
"userID 3": true,
"userID 4": true
}
}
users = {
"userID 1": {
"name": "alex",
"score": 12
},
"userID 2": {
"name": "alex",
"score": 40
},
"userID 3": {
"name": "alex",
"score": 30
},
"userID 4": {
"name": "alex",
"score": 9
}
}
所以我要求一种方法来过滤一组特定的**非朋友**,根据他们相对于特定用户的分数排序。
非常感谢任何帮助。
目前,我可以按分数排序。但不能过滤非好友。
DatabaseReference myRef = FirebaseDatabase.getInstance().getReference("users");
Query myQuery = myRef.orderByKey("score).limitToFirst(20);
【问题讨论】:
标签: android firebase firebase-realtime-database google-cloud-firestore