主要细节的孩子的柜台

时间:2015-04-17 15:12:42

标签: ios firebase

在我的数据结构中,我有一个包含子元素的主元素详细信息元素(一对多),类似于:

/myapp/masters/1234/details/5678
/myapp/masters/1234/details/3456
/myapp/masters/6789/details/9876

现在,当我在ios应用程序的表格视图中显示主人列表时,我想显示每个主要元素下的子数:

  • 1234(2)
  • 6789(1)

使用Firebase有效实现这一目标的最佳方法是什么?我应该在存储在主级别的元素中保留一个计数器,并在每次附加新细节时以事务方式更新它吗?其他策略?

1 个答案:

答案 0 :(得分:1)

FBDataSnapshot有一个如下所示的childrenCount属性:

[fbRef observeSingleEventOfType:FEventTypeValue withBlock:^(FDataSnapshot *snapshot) {

        NSInteger childCount = snapshot.childrenCount;
}

但是,有一个关于你的数据在firebase中的含义的问题。

这是结构吗?

myapp
   masters
      1234
        details
           5678
           3456
      6789
        details
           9876

如果确实如此,那么您可以使用上面相同的代码并迭代快照以获取子节点的计数(取决于数据量可能有其他更好的方法)。如果您的FB数据看起来不同,则取决于结构。