【发布时间】:2015-12-23 19:22:32
【问题描述】:
我的数据以以下结构存储在 firebase 中(图 1)。我遵循了结构化数据的指导方针,并将其保存在一个平面结构中,其中包含事件和用户的键值对,以允许多对多关系引用。我想使用用户 ID 来查找用户可以访问的事件,在纯 javascript 中这很简单(见图 2),但是使用 angularfire 证明很困难,因为我想使用 firebaseObject 或数组。有谁知道如何执行这样的查询?
图 1。
{
users: {
user_id1: {
events: {
event_id1: true,
event_id2: true
}
},
user_id2: {
events: {
event_id3: true,
event_id4: true
}
},
user_idN...
},
events: {
event_id1: {
users: {
user_id1: true
}
},
event_id2: {
users: {
user_id1: true
}
},
event_idN...
}
}
图2
// List all of user_id1's events
var ref = new Firebase("https://<<example>>.firebaseio.com/");
// fetch a list of user_id1's events
ref.child("users/user_id1/events").on('child_added', function(snapshot) {
// for each event, fetch it and print it
String groupKey = snapshot.key();
ref.child("events/" + groupKey).once('value', function(snapshot) {
console.log(snapshot.val());
});
});
【问题讨论】:
-
你在使用 angularJS 吗? @anauleau
-
是的,我同时使用 AngularJs。
-
您能否也分享该代码。你如何使用它。
-
我还没用。我不知道如何使用 $firebaseObject 来实现图 2。我需要附加它的范围。
-
参考这个。这可能会帮助你firebase.com/docs/web/libraries/angular/api.html
标签: javascript angularjs firebase angularfire