Firebase获取特定的父级,而不是所有子级的SWIFT

时间:2018-07-25 03:43:30

标签: swift firebase firebase-realtime-database

这是我在stackoverflow上遇到的第一个问题,但是我一生都无法解决。我正在使用Xcode和Swift 4。

我想从Firebase读取某个子级别,以便根据那里的结果制作tableView。以下是我的Firebase数据:

Firebase Data.

我想创建一个在“ subNames”下列出Bill和Josh的tableView,我似乎只制作了一个快照,其中包括Bill和Josh的所有子代。我只想要直接在subNames子项中的项目列表。有人知道该怎么做吗?我确定我缺少一些东西。

这是我的代码:

var ref: DatabaseReference!

var refHandle: UInt!

override func viewDidLoad() {
    super.viewDidLoad()



    ref = Database.database().reference() 

}

func loadmoreData () {

    refHandle = ref?.child("Users").child(FBuid).observe(.value, with : { (snapshot) in

        let mynamesArray = snapshot.childSnapshot(forPath: "subNames")

        print (mynamesArray)
    })

1 个答案:

答案 0 :(得分:0)

To get an array with just the keys under subNames, you'll need something like this:

refHandle = ref?.child("Users").child(FBuid).child("subNames").observe(.value, with : { (snapshot) in

  let mynamesArray = [String]()

  for child in snapshot.children {
    mynamesArray.append(child.key)
  }

  print (mynamesArray)
})