【发布时间】:2017-07-28 18:37:11
【问题描述】:
我的 Firebase 数据库中有(有点)大的笑话列表,如下图所示。
我将它们显示在我的 Android 应用程序中的列表中,类似于提要。我还实现了使用 Firebase 身份验证登录的可能性,现在我想为登录用户添加选项以(不)喜欢笑话并将它们添加到收藏夹(收藏夹应该像私人书签一样)。我正在思考如何构建我的数据,我有两个建议:
-
添加名为“userJokes”的新根节点,其子节点表示来自 Firebase 身份验证的用户 UID。每个 UID 子节点都应该具有来自“笑话”节点的每个笑话的副本,并带有表示(不)喜欢和最喜欢状态的附加布尔值。
-
另一种解决方案是将每个用户 UID 添加到用户(不)喜欢或添加到收藏夹的笑话中。
第一个解决方案是合乎逻辑的,但是如果我以这种方式构造数据,我如何计算喜欢和不喜欢的数量?将每个笑话从“笑话”节点复制到“userJokes”节点以让每个用户显示在提要中的最佳方法是什么?第二个是不切实际的,因为在检索笑话时,我会得到每个用户(不)喜欢或添加到收藏夹的信息,这不是我需要的。哪种解决方案更好?还有其他的吗?可以将 Firebase 身份验证中的用户 UID 添加到 Firebase 数据库中的数据库吗?
【问题讨论】:
标签: android ios node.js firebase-realtime-database firebase-authentication