我的Firebase存储空间如下所示 -
{
notes: {
note_1: {
$uid: 0 | 1,
title: "",
description: "",
priority: "",
state: "",
time: 0
},
note_2: {
...
}
}
}
其中$ uid是用户ID。
我已经配置了这样的规则 -
{
"rules": {
"notes": {
"$note_id": {
".read": "data.child(auth.uid).exists()",
".write": "(auth != null && !data.exists()) || data.child(auth.uid).val() === 1"
}
}
}
}
现在,我想查询特定用户的所有笔记。我尝试使用以下代码 -
mDatabase.child("notes").orderByChild(getLoggedInUserId())
.addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
Log.d(getClass().getCanonicalName(), Long.toString(dataSnapshot.getChildrenCount()));
}
@Override
public void onCancelled(DatabaseError databaseError) {
}
});
但是,这不起作用,因为我没有阅读"笔记"
有人可以建议如何检索这样的数据吗?
答案 0 :(得分:0)
更改子项的orderByChild
mDatabase.child("notes").child(getLoggedInUserId()