ios - 访问 Firebase 数据库 Swift 3 中的多级嵌套子级

标签 ios swift firebase swift3 firebase-realtime-database

我正在使用 Firebase 实时数据库。

我有一个与客户表相对应的客户 ID。我需要获取其各自的公寓名称。然后在公寓表中查找具有相同公寓名称的记录。找到后,我需要从其各自的段中获取所有 serviceType 值。还需要从公寓表中获取其 block 。

表结构如下:

customer
  -L1x2AKUL_KNTKXyza
    apartment_name:"ABC Residency"


appartment
  -L1Ohec4nW-ya_SkiG49
    apartment_name:"ABC Residency"
    block: "A Wing"
    segments
      -L1OhecGtEk_8xdNs67T
        serviceType:"Mopping"
      -L1OhecGtEk_8xdNs631
        serviceType:"Cleaning"

我只想使用一个 Firebase 数据库引用对象并实现这种多级访问。

任何帮助将不胜感激!

最佳答案

这应该对你有帮助。我创建了一个名为 CRUD 的类来执行我的所有 Firebase 功能。

import Firebase

/**
 CRUD Object to maintain Firebase DB
 - MUST use crud.creatRef() before any save or read functions!!
 */
class CRUD: NSObject {
    var ref: DatabaseReference!
    var id: String!

    /**Create FirebaseDB reference for use of CRUD Object to interact with DB*/
    func createRef() {
        id = PageDataSource.sharedInstance.myID!
        ref = Database.database().reference(fromURL: "https://yourURL.firebaseio.com/")
    }

}

当调用 CRUD 在我的应用程序中保存或加载数据时,我必须这样做:

let crud = CRUD()
crud.createRef()
crud.doSomething()

我在这方面取得了巨大的成功。您需要设计模型并相应地实现其余代码。当您创建保存函数时,它们应该位于 CRUD 对象内部。

关于ios - 访问 Firebase 数据库 Swift 3 中的多级嵌套子级,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48961835/

相关文章:

android - 无法确定任务 ':app:uploadCrashlyticsMappingFileRelease' 与 Google 版本 4.3.9 的依赖关系

python - 是否可以在带有可扩展选项的推送通知中发送 Firebase(FCM)通知消息(多行消息);使用Python?

ios - iTunes 连接警告 : "Your binary doesn’ t support iPad"

UnsafeMutableRawPointer 的 Swift 3 转换问题 - AudioQueue

iphone - 使用完成 block 呈现和关闭 UIViewController - 没有协议(protocol)和委托(delegate)

swift - UIBarButtonItem 的属性 "isEnabled"是类扩展中无法识别的选择器

ios - Swift POST 请求和事件指示器

reactjs - react 应用程序未使用 firebase 正确部署

objective-c - 捕获组在 NSRegularExpression 中不起作用

ios - 使用 dispatch_sync 在 uicollectionview 上延迟加载