Abgeflachte Daten verbinden

9

Ich möchte die Daten über init von meiner Kundentabelle in die Projektliste aufnehmen.

Das Modell ist wie folgt:

  • Projekte

    • Schlüssel
    • Name: Zeichenfolge
    • Kunde: customerKey
  • Kunden

    • Schlüssel
    • Name: Zeichenfolge

Hast du ein Beispiel, wie ich das von angular2-Komponente mit angularfire2 mache?

Mein Controller sieht so aus:

%Vor%

Aktualisieren

Ich habe den Typ von this.projects in Observable von FirebaseListObservable geändert Meine on ngOnInit () -Methode sieht nun so aus:

%Vor%

Ich kann jetzt nicht auf die Eigenschaft name des Kunden von der Vorlage innerhalb von

zugreifen %Vor%     
Alex 17.07.2016, 13:06
quelle

1 Antwort

5

Ich bin mir nicht sicher, wie Ihr Datensatz aussieht, also werde ich nur ein einfaches Beispiel schreiben. Angenommen, eine Struktur wie folgt:

%Vor%

Beispieldaten

%Vor%

Also speichern wir den Schlüssel des Kunden in der Eigenschaft customers jedes Projekts.

Nehmen wir an, wir wollen alle Projekte auflisten, aber wir wollen auch den richtigen Namen der Kunden, nicht nur ihre ID. Da firebase keine Joins hat, müssen wir dies manuell tun. Hier ist ein Weg, es zu tun:

%Vor%

Die innere .subscribe könnte in eine einfache .map geändert werden, wenn Sie die Daten asynchron erhalten möchten (in diesem Fall verwenden Sie die async pipe in der Vorlage).

    
John Smith 18.07.2016 13:56
quelle