这是我的数据库
我想将新用户添加到保留该格式的数据库中。我试过这个:
//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);
问题是每当我添加新用户时,前一个用户都会被覆盖。
答案 0 :(得分:15)
这是因为您正在使用:
Firebase usersRef = ref.child("Users");
usersRef.setValue(name);
通过这种方式,您将推送url/Users
中的值,删除之前的值。
检查doc:
使用setValue()将覆盖指定位置的数据,包括任何子节点。
要添加新用户而不删除上一个用户,只需删除此行:
//usersRef.setValue(name);
通过这种方式,您可以在url/Users/myName
中推送值,而不会覆盖其他值。
答案 1 :(得分:5)
答案 2 :(得分:1)
这对我有用。我使用的是模型类而不是Hash
mFirebaseDatabase.child(name);
mFirebaseDatabase = mFirebaseDatabase.child(name);
FirebaseDatabase.setValue(name);
FirebaseDatabase.setValue(user);