首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >当用户跟踪某人时如何更新Firebase数据库中的用户提要

当用户跟踪某人时如何更新Firebase数据库中的用户提要
EN

Stack Overflow用户
提问于 2016-09-14 14:41:43
回答 1查看 780关注 0票数 1

我正在设计一个应用程序,每个用户将有一个时间线(又名提要),根据他/她的文章,他/她的后续。在我的数据库中,我将用户时间表文章作为共享密钥保存。因此,feed子树中的每个ID都属于用户跟踪的某个人的帖子。

代码语言:javascript
复制
"users": {
  "userId-1": { 
    "userName": "Namey McNameface",

    "following": {
      "followingId-1": true,
      "followingId-2": true,
      .
      .
    },
    "followers": {
      "followerId-1": true,
      "followerId-2": true,
      .
      .
    },
    "feed": {
      "postId-1": true,
      "postId-2": true,
      .
      .
    }
  },
  "userId-2": {},
  "userId-3": {},
  .
  .
}

当有人发帖时,我也会将该帖子的键添加到该用户的追随者的feed中。

问题是,当有人开始跟踪其他人时,他们并没有开始看到自己的旧帖子。你知道如何在用户跟踪某人之后立即更新他们的时间表吗?

注意:这不是一个基于代码的问题,实际上是一个设计问题。我只是想了解一下Firebase数据库中用户提要的一般概念。

编辑:

我的服务器使用Java和。

用户的提要是按时间顺序的。因此,我们需要保持这个顺序,同时添加和删除对posts的引用。

谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-09-14 14:51:11

如果您想在开始跟踪用户时显示用户的历史帖子,则需要在那时阅读这些帖子。由于您的问题中没有关于您如何存储帖子的信息,不幸的是,这是我所能做出的具体回答。

但是,如果我们假设每个用户也有自己的帖子列表,那么它可能类似于(在JavaScript中):

代码语言:javascript
复制
function follow(uid) {
  var postsRef = ref.child('users').child(uid).child('posts');
  var feedRef = ref.child('users').child(auth.uid).child('feed');
  postsRef.on('child_added', function(snapshot) {
    feedRef.child(snapshot.key).set(true);
  });
}
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39493331

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档