【问题标题】:Firebase fetch Data DictionaryFirebase 获取数据字典
【发布时间】:2019-07-13 04:28:42
【问题描述】:

我不知道如何在 Swift 4 Firebase 中获取数据。我需要在字典中获取数据字典。

这是我在 Firebase 中的数据:

我想获取“剧集”中的数据。

【问题讨论】:

  • 您已经尝试过什么了吗?如果是这样,请更新您的问题以显示您遇到的问题。如果没有,我建议从 Firebase 文档开始:firebase.google.com/docs/database/ios/…
  • 感谢您的帮助。我只想将“剧集”中的数据提取到我的项目中
  • 好的 - 您尝试使用的代码在哪里?文档在“读取数据”部分对此进行了介绍。

标签: swift firebase firebase-realtime-database


【解决方案1】:

我会首先创建一个 NSObject 类。使检索更容易。

class EpShow: NSObject {

private var Ep1:String!
private var Ep2:String!

init(Ep1:String, Ep2:String) {
    self.Ep1 = Ep1
    self.Ep2 = Ep2
}

public func getEp1() -> String{
    return Ep1
}

public func getEp2() -> String{
    return Ep2
}

public func setEp1(one:String){
    Ep1 = one
}

public func setEp2(two:String){
    Ep2 = two
}

convenience override init() {
    self.init(Ep1: " ", Ep2: " ")
}

添加到火力基地

var ref:DatabaseRefernce!
var counter:Int = 1
ref = Database.database().reference().child("Featured")

    ref.childByAutoId().child("Episodes").setValue([
        "Ep1": String(counter),
        "Ep2": String(counter + 1)
    ])

    counter += 1

并获取嵌套子级中的数据

private var ep = [EpShow]()
ref.observe(DataEventType.value, with: {(snapshot) in
        for idAutoChild in snapshot.children.allObjects as! [DataSnapshot]{
            for episodesChild in idAutoChild.children.allObjects as! [DataSnapshot]{
                let e = episodesChild.value as! [String:AnyObject]
                let epOne = e["Ep1"] as! String
                let epTwo = e["Ep2"] as! String

                let show = EpShow(Ep1: epOne, Ep2: epTwo)
                print("Ep1: \(show.getEp1()) \n Ep2: \(show.getEp2())")
                 self.ep.append(show)

            }
        }
    })

【讨论】:

  • 感谢亚当的帮助❤️❤️
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2016-10-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-12-04
  • 2019-05-29
  • 1970-01-01
相关资源
最近更新 更多