2017-07-26 33 views
0

我开始在离子与火力的发展和我面对一点忧虑。这是我的数据库。我想显示用户X是其成员的所有房间。在每个组中都有一个表格用于列表成员。但我可以列出所有的房间。用离子查询Firebase

"rooms" : { 
 
    "-Kq-SLPGXoyW5bn8384X" : { 
 
     "createdAt" : 1501098764132, 
 
     "group_dp" : "img_base64", 
 
     "groupname" : "PDCI", 
 
     "members" : [ "10", "11", "12" ], 
 
     "ownerId" : "10", 
 
     "type" : "groupe" 
 
    }, 
 
    "-Kq-StfFDhhuOgMhNrae" : { 
 
     "createdAt" : 1501098908584, 
 
     "group_dp" : "img_base64", 
 
     "groupname" : "Echo", 
 
     "members" : [ "10", "13", "14", "15", "16", "17", "18" ], 
 
     "ownerId" : "10", 
 
     "type" : "onetoone" 
 
    } 
 
    }

function Rooms($firebaseArray, UserService, firebase, $localStorage, $sessionStorage) { 
 
    var currentUser = UserService.getProfile(); 
 
    var ref = firebase.database().ref(); 
 
    var rooms = $firebaseArray(ref.child('rooms')); 
 

 
    return { 
 
     all: function() { 
 
      rooms.$loaded().then(function(response) { 
 
       console.log(response); 
 
       angular.forEach(response, function(room) { 
 
        ref.child('room-messages').child(room.$id) 
 
         .orderByChild("createdAt") 
 
         .limitToLast(1) 
 
         .on("child_added", function(snapshot) { 
 
          room["last_message_content"] = snapshot.val().content; 
 
         }); 
 
       }) 
 
      }); 
 

 
      return rooms; 
 
     }

回答

0

the documentation,最好的办法是将有多个树;一个房间和一个会员。在会员树列表中,他们是房间树中的所有房间的一部分。当您需要了解所有房间时,会员只是参考特定会员条目的一部分,然后通过房间条目获取数据。

+0

OKay谢谢我试试。 –