如何在嵌套的Firebase数据库中检索所有数据 [英] how to retrieve all the data within nested firebase database
本文介绍了如何在嵌套的Firebase数据库中检索所有数据的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
在代码示例中,Bookings下面的关键节点是userIds(2个用户),后跟一个随机push()键.我想检索嵌套在两个userIds中的数据.
In the code sample the key nodes below Bookings are userIds(2 users) followed by a random push() key. I want to retrieve the data nested within both the userIds.
databaseReference = FirebaseDatabase.getInstance()
.getReference()
.child("Bookings")
.child(user.getUid());
上面的参考仅适用于当前登录的用户
The reference above only applies to the current logged in user
推荐答案
请使用以下代码:
databaseReference = FirebaseDatabase.getInstance().getReference().child("Bookings");
ValueEventListener eventListener = new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
String userId = dataSnapshot.getKey();
DatabaseReference keyRef = FirebaseDatabase.getInstance().getReference().child("Bookings").child(userId);
ValueEventListener valueEventListener = new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
for(DataSnapshot ds : dataSnapshot.getChildren()) {
String Client_name = ds.child("Client_name").getValue(String.class);
String Data = ds.child("Data").getValue(String.class);
//and so on
}
}
@Override
public void onCancelled(DatabaseError databaseError) {}
};
keyRef.addListenerForSingleValueEvent(valueEventListener);
}
@Override
public void onCancelled(DatabaseError databaseError) {}
};
databaseReference.addListenerForSingleValueEvent(eventListener);
希望有帮助.
这篇关于如何在嵌套的Firebase数据库中检索所有数据的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文