【发布时间】:2020-01-12 22:32:46
【问题描述】:
我想根据创建日期和时间从Firebase检索数据
我还没有找到任何其他方法,而不是创建每个用户的孩子来使用orderByChild("Create") 保存创建日期和时间排序,但每个用户都保存有随机 id 我如何指向按孩子排序:
DatabaseReference userref = FirebaseDatabase.getInstance().getReference().child("Connection").child("Admin");
userref.orderByChild("Create");
userref.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
if (dataSnapshot.exists()) {
for (DataSnapshot userSnapshot : dataSnapshot.getChildren()) {
Users users = userSnapshot.getValue(Users.class);
adminsList.add(users);
}
mAdapter = new Adapter_All_Admins(adminsList);
mRecyclerView.addItemDecoration(new DividerItemDecoration(getContext(), LinearLayoutManager.VERTICAL));
mRecyclerView.setAdapter(mAdapter);
}
}
@Override
public void onCancelled(@NonNull DatabaseError databaseError) {
}
});
【问题讨论】:
-
通过阅读您的问题,我真的很难理解您的确切问题。我无法弄清楚你的最终目标是什么?您的预期和当前输出是什么?你为什么关心随机密钥?你是什么意思,“我怎么能指向排序的孩子”?最后,正如您已经知道的,通过使用 orderByChild("Create") 可以对其进行排序,那么问题是什么?
-
实际上 orderByChild("Create") 将订购 userref,因为 userref 指的是“Admin”,但在 Admin 中没有像“Create”这样的子项,它是包含我想要的用户数据的随机密钥的子项以引用随机密钥的方式,以便 orderByChild("Create") 可以工作
-
@Roaim 立即查看
标签: java android firebase firebase-realtime-database