我将Firebase数据库尽可能保持平坦。
这是我的结构:https://stackoverflow.com/a/40115527/3669981
稍加调整:使用分配给projectsRoles
节点的角色键,而不是/roles
节点中的角色值(这样我可以更轻松地添加和编辑角色)。
当我需要进行 1 + (numUsers*2)
调用以获取项目成员列表时,疼痛开始,假设我已经拥有项目ID。
projectsRoles/$projectID
以获取当前项目的所有用户ID。roles/$roleID
users/$userID
这意味着如果一个项目有30个成员,该应用程序将对firebase数据库进行61次调用。
我的问题是:虽然通话次数很多,但每次通话收到的数据都是最小。我按照指示使尽可能平坦,但是对firebase进行如此多的调用是否常见?