繁体   English   中英

孩子的数据被推送后如何获取?

[英]How to get a child's data when it has been pushed?

我正在使用“push()”函数将对象存储到我的 firebase 数据库中,并且由于它使用唯一键存储数据,因此我无法使用文档中提到的内容更改存储的对象值:

myRef.child("child name").setValue(model);

因为我根本不知道钥匙。 我想知道还有其他方法可以修改 firebase 数据库的数据。

我想向用户添加一个名为“对话”的新孩子,并以编程方式向他添加孩子。

这是数据库结构:

在此处输入图片说明

如果您有以下数据库:

 Users
    pushId
        name : john
        age  : 100

如果您不知道pushId ,您可以执行以下操作:

DatabaseReference databaseReference = FirebaseDatabase.getInstance().getReference("Users");
databaseReference.addListenerForSingleValueEvent(new ValueEventListener() {
 @Override
 public void onDataChange(DataSnapshot dataSnapshot) {
        for(DataSnapshot ds : dataSnapshot.getChildren()){
         String key = ds.getKey();
         String name = ds.child("name").getValue().toString();
     }
}

 @Override
public void onCancelled(DatabaseError databaseError) {
 }
});

以上将使用getKey()您提供name和密钥

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM