Firebase: configuración de propiedades de usuario adicionales

Me gustaría agregar una propiedad a un objeto de usuario de Firebase. La documentación del usuario dice que solo puedo almacenar propiedades adicionales usando la base de datos en tiempo real de Firebase.

No estoy seguro de cómo esto puede funcionar en la práctica.

¿Qué significa lo siguiente en la práctica?

No puede agregar otras propiedades al objeto Usuario de Firebase directamente; en su lugar, puedes almacenar las propiedades adicionales en tu Firebase Realtime Database.

Lo interpreto de la siguiente manera:

“no puedes modificar las propiedades de un objeto FIRUser pero puedes combinar esto con objetos adicionales”

Encontré la documentación de la función set que interfiero de esta manera:

var userRef = ref.child("users"); userRef.set({ newfield: "value" }); 

¿Es este un enfoque sensato?

Ya casi estás ahí. En la documentación heredada de Firebase, teníamos una sección sobre el almacenamiento de dichos datos de usuario adicionales .

La clave es almacenar la información adicional bajo el uid del usuario:

  let newUser = [ "provider": authData.provider, "displayName": authData.providerData["displayName"] as? NSString as? String ] // Create a child path with a key set to the uid underneath the "users" node // This creates a URL path like the following: // - https://.firebaseio.com/users/ ref.childByAppendingPath("users") .childByAppendingPath(authData.uid).setValue(newUser) 

He agregado una nota que también debería agregar esta información en la nueva documentación. Solo necesitamos encontrar un buen lugar para eso.