Alex Bingham:
Estoy tratando de añadir un nuevo hijo a la continuación en mi base de datos, pero cada vez que agrego un nuevo hijo que los otros son sobrescritos.
Estoy consciente setValue () se sobreponen a los niños. No quiero usar push () ya que esto creará otra identificación que no quiero como quiero que los usuarios puedan entrar en la base de datos y añadir un nuevo ID de usuario: verdadera manualmente.
mDatabase = FirebaseDatabase.getInstance().getReference("readUsers")
HashMap<String, String> readUser = new HashMap<>();
readUser.put(userId, "true");
mDatabase.setValue(readUser).addOnCompleteListener(new OnCompleteListener<Void>() {
¿Hay otra manera agrego nuevos niños sin usar push ()?
Peter Haddad:
Se puede utilizar updateChildren()
:
mDatabase = FirebaseDatabase.getInstance().getReference("readUsers")
Map<String, Object> updates = new HashMap<String,Object>();
updates.put(userId, "true");
mDatabase.updateChildren(updates);
A partir de los documentos:
Para escribir simultáneamente a los niños específicas de un nodo sin sobrescribir otros nodos secundarios, utilizar el
updateChildren()
método.