【问题标题】:Get Children of Children in Firebase Using Swift使用 Swift 在 Firebase 中获取孩子的孩子
【发布时间】:2019-05-14 20:25:32
【问题描述】:

我有一个简单的 firebase 数据库,需要从中获取子值。如何获取子字段值?这是我的数据库:

Users

 -LddrOHGdBf_GcPrcvYn

    FirstName: Mike

    LastName: Smith

    username: m@m.com

我一直在处理堆栈溢出问题,似乎没有人能回答这个问题,但我知道这一定很容易。

import UIKit
import FirebaseDatabase

class CustProfileViewController: UIViewController {
var ref: DatabaseReference?
var tempName = ""
var tempFirstName = ""
@IBOutlet weak var username: UITextField!
@IBOutlet weak var firstName: UITextField!
@IBOutlet weak var editAddressButton: UIButton!
override func viewDidLoad() {
    super.viewDidLoad()
    ref = Database.database().reference()
    username.text = "m@m.com"
}

@IBAction func editAddressButtonPressed(_ sender: Any) {
    self.ref?.child("Users").queryOrdered(byChild: "username").queryEqual(toValue: username.text!).observe(.value, with: { (snapShot) in
        if (snapShot.value! is NSNull) {
        print("nothing found")
    } else {
        print("found it!")
            print(snapShot)
            let snapShotValue = snapShot.value as! NSDictionary
            let fName = snapShotValue["FirstName"] as? String
            self.firstName.text = fName
            print(self.firstName.text!)

        }
    })
}

}

我希望 firstName 文本框填充 fName,但它返回 nil 值。

【问题讨论】:

    标签: swift firebase-realtime-database


    【解决方案1】:

    你可以试试

    @IBAction func editAddressButtonPressed(_ sender: Any) {
        self.ref?.child("Users").queryOrdered(byChild: "username").queryEqual(toValue: username.text!).observe(.value, with: { (snapShot) in
        if !snapShot.exists() {
             print("nothing found")
        } else {
            print("found it!")
                print(snapShot)
                let snapShotValue = snapShot.value as! [String:[String:Any]]
                Array(snapShotValue.values).forEach {
                   let fName = $0["FirstName"] as! String 
                   print(fName)
                }
    
            }
        })
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-01-25
      • 1970-01-01
      • 2018-08-10
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多