Firebase Swift Retrieve检索单个孩子

时间:2018-03-20 05:27:36

标签: ios swift firebase firebase-realtime-database

以前曾经问过这个问题,但我现在已经坚持了很长时间,没有研究能够解决我的问题。也许这是非常明显的事情,所以我提前道歉。

这是我的数据库:

- Users
  - 6tZ7OMXa86XFo9auvke4dA4SPJX2 // this is the UID
    - email: "billyjoe@gmail.com" 
    - name: "Billy Joe"
    - points: "5" // -->> The value I want to retrieve.

Here is a pic if would like to see the actual database

我试图通过这样做来检索点数:

@IBOutlet weak var pointsTextField: UILabel!

var ref: DatabaseReference!

override func viewDidLoad() {
    super.viewDidLoad()

    let userID = Auth.auth().currentUser?.uid
    userIdTextField.text = userID
    ref = Database.database().reference().child("Users").child(userID!).child("points")

    ref.observeSingleEvent(of: .value) {
        (snapshot) in
        if let points = snapshot.value as? Int {
            self.pointsTextField.text = "\(points)"
        }
    }

我还尝试在" observeSingleEvent"之前添加子节点。并重组它,但我的标签总是回来没有5。 我测试了UID并且它是正确的。我有什么想法,我做错了什么?

由于

1 个答案:

答案 0 :(得分:0)

您将点存储为String并将其作为Int

重新执行
    if let points = snapshot.value as? String {
        self.pointsTextField.text = "\(points)"
    }