Firebase添加指定名称的新子项 [英] Firebase add new child with specified name
问题描述
这是我的数据库
< img src =https://i.stack.imgur.com/xOclS.pngalt =在这里输入图片描述>
d喜欢将新用户添加到保持该格式的数据库中。我试过这个:
pre $ //在数据库
中存储数据Firebase usersRef = ref.child(Users );
Map< String,String> userData = new HashMap< String,String>();
userData.put(Nombre,name);
userData.put(Password,pass);
userData.put(Confirmed,FALSE);
userData.put(Email,mail);
usersRef.setValue(name);
usersRef = ref.child(Users)。child(name);
usersRef.setValue(userData);
问题是,每当我添加一个新用户时,前一个被覆盖。
这是因为您正在使用:
Firebase usersRef = ref.child(Users);
usersRef.setValue(name);
通过这种方式,您可以将 url / Users
删除以前的值。
使用setValue()将覆盖指定位置的数据,包括任何子节点。
要添加新用户而不删除前一个用户,只需删除以下行:
// usersRef.setValue(name);
通过这种方式,您可以将 url / Users / myName
,而无需重写其他值。
This is my database
I'd like to add new users to database keeping that format. I've tried this:
//Store data in database
Firebase usersRef = ref.child("Users");
Map<String, String> userData = new HashMap<String, String>();
userData.put("Nombre", name);
userData.put("Password", pass);
userData.put("Confirmed", "FALSE");
userData.put("Email", mail);
usersRef.setValue(name);
usersRef = ref.child("Users").child(name);
usersRef.setValue(userData);
The problem is that whenever i add a new user, the previous one is overwritten. Thanks a lot.
It happens because you are using:
Firebase usersRef = ref.child("Users");
usersRef.setValue(name);
In this way you will push the value in url/Users
removing the previous value.
Check the doc:
Using setValue() will overwrite the data at the specified location, including any child nodes.
To add a new user without removing the previous one , just remove this line:
//usersRef.setValue(name);
In this way you will push the value in url/Users/myName
without overriding other values.
这篇关于Firebase添加指定名称的新子项的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!