我只是想从我的“产品”节点中检索所有数据,我不确定该怎么做,这就是我的数据库的设置方式。
Producuts(yes I am aware products is misspelled)
sH8LzoaH9UaXahlmssixTpvQy8q2 (UUID)
-LiToCix_BpBU2G5b0GF (Push value)
Description:
PostImage:
-Lj71JBxtvmbjTRLaA-6 (Push value)
Description:
PostImage:
-Lj71K5QfoguoLKdUDL4. (Push value)
Description:
PostImage:
从我的代码片段中可以看到,我已经设置了一个值事件监听器,我不确定如何从“产品”节点中检索所有值。
public void fetchUserInfo(){
productDatabaseRefrence = FirebaseDatabase.getInstance().getReference().child("Producuts").child(currentUser.getUid());
productDatabaseRefrence.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
String mGroupId = productDatabaseRefrence.push().getKey();
Log.i("id",mGroupId);
}
@Override
public void onCancelled(DatabaseError databaseError) {
}
});
}
答案 0 :(得分:2)
根据图像,您具有以下数据库:
Producuts(yes I am aware products is misspelled)
sH8LzoaH9UaXahlmssixTpvQy8q2 (UUID)
-LiToCix_BpBU2G5b0GF (Push value)
Description:
PostImage:
-Lj71JBxtvmbjTRLaA-6 (Push value)
Description:
PostImage:
-Lj71K5QfoguoLKdUDL4. (Push value)
Description:
PostImage:
要检索数据库中的description
和postimage
,请尝试以下操作:
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
for(DataSnapshot ds : dataSnapshot.getChildren()){
String key = ds.getKey();
String desc = ds.child("Description").getValue(String.class);
String img = ds.child("PostImage").getValue(String.class);
}
}
使用getKey()
可以检索随机ID示例-LiToCix_BpBU2G5b0GF (Push value)
,并使用child()
可以检索每个随机ID下的不同子项。