2016-06-01 1 views
1

Ich habe eine Situation, mehrere Benutzer haben alle ihnen eindeutige HashID zugewiesen, die ihre URL unterscheidet.Behandeln mehrerer URLs in Firebase für Verweise?

users/hashId/bla/blah 

Der einzige Unterschied in diesen URLs ist HashId-Wert.

Während meine Client-Seite die Daten in Firebase aktualisiert, muss ich Server-Interaktionen auf den Ereignis-Listener child_added im Knotenende anwenden.

App kann beliebig viele Benutzer haben, wie skaliert child_added für jede URL? Gibt es ein Konzept für dynamische URLs?

Da Verweis auf jede URL neu ist, bin ich mir dieser Situation nicht sicher. Ich möchte auch nicht mit einer for-Schleife für die dynamische Ereignisbindung gehen.

S.S: Vergleichsweise neu zu Firebase.

Antwort

2

Es ist schwer, aus Ihrer Beschreibung sicher zu sein, aber suchen Sie das?

var db = firebase.database(); 
var ref = db.ref("users"); 
ref.on("child_added", function(snapshot) { 
    console.log(snapshot.child("bla/blah").val()); 
}); 

Wenn you''d lieber nur den Wert von blah für jeden Benutzer bekommen, dann sollten Sie Ihr Datenmodell modifizieren, um die Daten zu trennen:

users_bla_blah 
    $uid 
    valueOfBlaBlah 
users 
    $uid 
    otherProps 

Dann können Sie einfach für hören:

var ref = db.ref("users_bla_blah"); 
ref.on("child_added", function(snapshot) { 
    console.log(snapshot.val()); 
}); 
+0

http://stackoverflow.com/questions/29037813/how-to-manage-dynamic-path-in-app-to-firebase-data, erhielt diese. Und es funktioniert. Wie dumm von mir, dass ich nicht daran gedacht habe, ein Kind zu benutzen(). Vielen Dank :) – anshulix