从firebase数据库获取特定子项的.value观察者?

时间:2017-07-25 05:54:37

标签: ios swift firebase firebase-realtime-database

我有一个用户可以订阅或不订阅的主题列表。在主页上,我在桌面视图中显示用户订阅的房间列表。我不知道我是否过于复杂,但我很难理解如何让所有这些个别主题的实时观察者。

我的数据库看起来像:

 topics:
      stackoverflow:
         users: 50
         lastPost : 2384938943
      twitch: 
         users : 50
         lastPost : 209340932843
   users: 
       user1:
         favoritedRooms:
           twitch : true
           stackoverflow : true

因此,我可以从当前用户获取受欢迎的房间列表并将其存储到数组中。从那里,我不知道如果其中一个房间有价值更新,我不知道如何更新我的tableview。如果我做了一些事情,比如当我拿到它们然后做类似

之类的数组时将收藏的主题存储在数组中
 for topic in favoritedTopicNames {
   somereference.observe(.value) {
       //make a Topic object
      // append it to an array I'm basing my table off of and reloadData
     }   
}

然后我为每个主题设置了单独的.value观察者。我不能这样做,因为这意味着每次调用一个主题的观察者我只会回到那个主题,所以我无法清除我的数组,追加和重新加载,因为我最终只会有一个主题。

所以基本上我的问题是,如果我需要首先查询要观察的特定主题列表,这是我的主题节点的一个子集,我如何保持这些特定主题的实时订阅源,以便在用户数量或lastPost数字已更改,我可以更新我的标签并保持信息的直播吗?

0 个答案:

没有答案