ios - 主要细节中的 child 计数器

标签 ios firebase

在我的数据结构中,我有一个包含子 Detail 元素(一对多)的 Master 元素,类似这样:

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

现在,当我在我的 ios 应用程序的 TableView 中显示母版列表时,我想显示每个母版元素下的子级数量:

  • 1234 (2)
  • 6789 (1)

使用 Firebase 高效执行此操作的最佳方法是什么?我是否应该在存储在主级别的元素中保留一个计数器,并在每次附加新细节时以事务方式更新它?其他策略?

最佳答案

FBDataSnapshot 有一个 childrenCount 属性,用法如下:

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

        NSInteger childCount = snapshot.childrenCount;
}

但是,关于您的数据在 Firebase 中的外观存在疑问。

是这个结构吗?

myapp
   masters
      1234
        details
           5678
           3456
      6789
        details
           9876

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

关于ios - 主要细节中的 child 计数器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29703083/

相关文章:

swift - 在数据库搜索中将小写和大写视为相同

java - 每次单击按钮时 Firebase 都会创建一个新对象

ios - Box2D Gravity 到特定对象?

ios - 如何在 Swift 中实现 WebViewJavascriptBridge?

ios - 之前是哪个 Controller ?

ios - 在 Objective-C 中使用正则表达式获取子字符串?

php - 我们可以将 Firebase 实时数据库与核心 PHP 一起使用吗?

iOS 推送通知不适用于分发证书

javascript - 我想使用子值检索 firebase 数据库数据

angularjs - 在 AngularJS 中从 Firebase 实时更新信息