gpt4 book ai didi

java - 我应该如何查询仅具有特定用户 ID 的 recyclerview 中的帖子?

转载 作者:行者123 更新时间:2023-11-30 05:01:28 24 4
gpt4 key购买 nike

我正在尝试使用 Firebase UI recyclerview 来显示特定用户的一系列帖子。我有一个名为 all_user_posts 的节点,其中包含每个帖子的键。有没有办法在键值对子项中显示仅具有特定用户 ID 的帖子?如果有人有任何想法,将不胜感激

我正在使用 Android Studio 3.2 和 Firebase 实时数据库的最新依赖项。对于同一项目中的其他 recyclerviews,我使用以下方式显示了所有帖子:

DatabaseReference postReference = FirebaseDatabase.getInstance().getReference().child("all_user_posts");
Query postQuery = postReference.orderByKey();

但是有没有办法只显示具有附加到 postKey 的特定用户 ID 的帖子?

private void displayAllPosts() {
Query postQuery = postReference.orderByKey();
FirebaseRecyclerOptions firebaseRecyclerOptions = new FirebaseRecyclerOptions.Builder<Posts>().setQuery(postQuery, Posts.class).build();
FirebaseRecyclerAdapter<Posts, PostViewHolder> firebaseRecyclerAdapter = new FirebaseRecyclerAdapter<Posts, PostViewHolder>(firebaseRecyclerOptions) {
@Override
protected void onBindViewHolder(@NonNull final PostViewHolder holder, final int position, @NonNull Posts model) {

//post key in 'all_user_posts' node
final String PostKey = getRef(position).getKey();
}

@NonNull
@Override
public PostViewHolder onCreateViewHolder(@NonNull ViewGroup viewGroup, int i) {
View view = LayoutInflater.from(mContext).inflate(R.layout.layout_post, viewGroup, false);
return new PostViewHolder(view);
}
};
recyclerView.setAdapter(firebaseRecyclerAdapter);
firebaseRecyclerAdapter.startListening();
}

最佳答案

既然你在数据库中使用了userId,那么你可以这样做:

FirebaseUser user = FirebaseUser.getInstance().getCurrentUser()
Query postQuery = postReference.orderByKey().equalTo(user.getUid());

这将仅检索与 userId

相关的数据

关于java - 我应该如何查询仅具有特定用户 ID 的 recyclerview 中的帖子?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58176302/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com