CONTEXT auf einer Firebase AnwendungWie ein Benutzer UID in einer Feuerbasis Datenbank speichern und zu einem POJO
arbeite ich zur Zeit (in Android) Karte hat. Ich habe die Authentifizierung, den Speicher und die Datenbank ohne nennenswerte Probleme eingerichtet. Da der Firebase Auth Benutzer nur ein paar Eigenschaften hat, habe ich ein "Benutzer" POJO erstellt, um zusätzliche Benutzerinformationen zu speichern, die nicht im Firebase Auth Benutzer enthalten sind (zB Vorname, Geburtsdatum, Nationalität, etc ...) . Die Struktur dieser ist in der folgenden Abbildung dargestellt:
Die UUID in dem Bild ist der Benutzer jeweilige auth uid. Dies wurde als solche erreicht:
ref.child(users).child(auth.getUid()).setValue(user);
Dieser Ansatz scheint mit der Dokumentation im Einklang, wie es mir Schreib beschränken erlaubt/an den Kontoinhaber las mit der auth.uid === $uid
Regel. Außerdem entsprechen alle Eigenschaften innerhalb des Baums meinem POJO wie erwartet.
PROBLEM
Mein ein großes Problem ist, dass ich die Benutzer uid in der POJO speichern möchten. Da die UID derzeit als übergeordnete Objekte strukturiert ist, bin ich mir nicht sicher, wie ich sie dem Benutzer POJO zuordnen soll. Ich könnte natürlich ein zusätzliches Feld in der untersten Baumebene speichern. Dies scheint jedoch sinnlose Datenredundanz zu sein.
FRAGE
Was ist der beste Weg, um die uid mit einem entsprechenden „user“ POJO Klasse zuzuordnen. Im Idealfall würde ich 10 Benutzer zum Anzeigen abrufen können, und wenn eine angeklickt wird, laden Sie die App eine Profilaktivität. Dies würde bedeuten, die Benutzer-ID des Benutzers läuft, so kann ich sagen:
ref.child(users).child(targetUID)
und holt das abgegriffene Benutzerkonto. Dies bedeutet, ihre UID zu haben.
Dies funktioniert genauso wie die integrierte 'adapter.getRef (position) .getKey()'. –
Ah .. Ich habe das überall gesucht, aber ich konnte es nicht finden ... trotzdem habe ich den Code geändert, damit ich den FirebaseListAdapter filterbar machen konnte. –
Klingt wie eine nette Abwechslung. Aber es hat wenig mit dieser Frage zu tun. Kannst du deine Antwort aktualisieren, um zu zeigen, wie ein minimaler POJO aussieht, der es erlaubt, den Schlüssel/die UID einzustellen und wie du es benutzen würdest? –