2017-01-09 5 views
0

I sortierten Daten aus einer Datenbank Firebase importieren möchten.Firebase Import sortiert Daten

Als Beispiel: Ich habe eine kleine Firma und ich brauche die Daten aller Arbeitgeber zu importieren. Ich bin owner_01 was bedeutet, würde ich alle Benutzer, deren Kind importieren müssen owner_uid Spiel owner_01.

Die Daten werden auf einer Website verwendet werden, was bedeutet, dass ich javascript verwendet werden.

Hier haben Sie die JSON:

{ 
    "Owner_users" : { 
    "owner_01" : { 
     "email" : "[email protected]", 
     "uid" : 123 
    }, 
    "owner_02" : { 
     "email" : "[email protected]", 
     "uid" : 12345 
    } 
    }, 
    "Users" : { 
    "user_01" : { 
     "Email" : "[email protected]", 
     "Name" : "asd", 
     "age" : 23, 
     "owner_uid" : 123, 
     "uid" : "asd" 
    }, 
    "user_02" : { 
     "Email" : "[email protected]", 
     "Name" : "all", 
     "age" : 49, 
     "owner_uid" : 123, 
     "uid" : "asdfg" 
    }, 
    "user_03" : { 
     "age" : 60, 
     "email" : "[email protected]", 
     "owner_uid" : 12345, 
     "uid" : "sdfzsvsvsd" 
    } 
    } 
} 

prüfen this URL, um zu sehen, wie die Datenbank strukturiert ist. Update:

HTML-Code:

<table class="mdl-data-table mdl-js-data-table "> 
    <thead> 
     <tr> 
     <th class="mdl-data-table__cell--non-numeric">Email</th> 
     <th>Age</th> 
     <th>uid</th> 
     </tr> 
    </thead> 
    <tbody id="usersData"> 
    </tbody> 
    </table> 

JS Code

var usersRef = firebase.database().ref('Users') 
var query = usersRef.orderByChild('owner_uid').equalTo('123'); 
query.on("child_added", function(snapshot) { 

    var email = snap.child("Email").val; 
    var name = snap.child("Name").val; 
    var uid = snap.child("uid").val; 

    $("#usersData").append("<tr><td" + email + "</td><td>" + name + "</td><td>" + uid + "</td></tr>"); 

}); 
+0

Sie haben einen Link zu einem Bild des JSON Baum in Ihrer Frage enthalten. Bitte ersetzen Sie dies durch den tatsächlichen JSON als Text, den Sie einfach erhalten, wenn Sie auf den Link JSON exportieren in [Ihrer Firebase-Datenbankkonsole] klicken (https://console.firebase.google.com/project/_/database/data/). . Da der JSON als Text durchsuchbar ist, können wir ihn einfach verwenden, um mit Ihren tatsächlichen Daten zu testen und sie in unserer Antwort zu verwenden, und im Allgemeinen ist dies nur eine gute Sache. –

+0

@FrankvanPuffelen Danke für Rat! Ich habe den JSON-Baum hochgeladen. – galo

Antwort

1
var usersRef = firebase.database().ref('Users') 
var query = usersRef.orderByChild('owner_uid').equalTo('YOUR UID HERE'); 
query.on("child_added", function(snapshot) { 
    console.log(snapshot.val().uid); 
}); 
+0

@FrankvanPuffelen Ich habe es versucht und ich denke, ich vermisse etwas, kannst du mir bitte zeigen, wenn ich etwas falsch mache? Ich habe den HTML-Code und den Js-Code/= aktualisiert. – galo

+0

'var email = snap.child (" E-Mail "). Val' ->' var email = snap.child ("Email"). Val() '. –

+0

@FrankvanPuffelen Entschuldigung. Ich habe alle fehlenden() geändert, aber es zeigt mir immer noch nicht die Informationen, die ich importieren möchte. – galo