Firebase: impostazione di proprietà utente aggiuntive

Vorrei aggiungere una proprietà a un object utente Firebase. La documentazione dell’utente dice che posso solo memorizzare ulteriori proprietà usando il database in tempo reale di Firebase.

Non sono sicuro di come questo possa funzionare nella pratica.

Cosa significa questo in pratica?

Non è ansible aggiungere direttamente altre proprietà all’object User di Firebase; invece, puoi memorizzare le proprietà aggiuntive nel tuo database in tempo reale di Firebase.

Lo interpreto come segue:

“non puoi modificare le proprietà di un object FIRUser ma puoi combinarlo con oggetti aggiuntivi”

Ho trovato la documentazione della funzione impostata che interpet in questo modo:

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

È un approccio sensato?

Ci sei quasi. Nella documentazione legacy di Firebase, avevamo una sezione sulla memorizzazione di tali dati utente aggiuntivi .

La chiave è memorizzare le informazioni aggiuntive sotto l’ uid dell’utente:

  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) 

Ho aggiunto una nota che dovremmo aggiungere queste informazioni anche nella nuova documentazione. Dobbiamo solo trovare un buon posto per questo.