在图像之后,我想要检索用户内部的所有项目,我的getUid()设置为true并在FirebaseRecyclerAdapter中使用。
我正在使用FirebaseRecyclerAdapter
我正在尝试这个,但它不起作用
Query postsQuery = mDatabase.child("projects").child("users").orderByChild(getUid()).equalTo(true);
mAdapter = new FirebaseRecyclerAdapter<Project, ProjectViewHolder>(Project.class, R.layout.item_project,
ProjectViewHolder.class, postsQuery) {
@Override
protected void populateViewHolder(final ProjectViewHolder viewHolder, final Project model, final int position) {
final DatabaseReference postRef = getRef(position);
Log.d(TAG, model.name + "");
viewHolder.bindToPost(model);
}
};
mRecycler.setAdapter(mAdapter);
我认为问题在于我需要父对象(Projects)而不是用户。
答案 0 :(得分:0)
您需要使用FirebaseIndexRecyclerAdapter
在这种情况下,您的密钥引用将是您设置链接到用户的项目的另一个节点。
"user_projects": {
"UID": {
"project_1":true,
"project_4":true,
}
}
答案 1 :(得分:0)
你需要使用getParent()
这样的方法更进一步:
final DatabaseReference postRef = getRef(position).getParent();
String name = postRef.child("name").getValue(String.class);
希望它有所帮助。