Firebase 3 - 按喜欢/不同更新数据

时间:2017-08-16 17:11:45

标签: firebase swift3 firebase-realtime-database

我已经创建了从Firebase保存和接收数据(数据库)的应用程序。 要在应用程序中发布数据,您无需登录,甚至无需注册。

这是一个简单的应用程序,用于娱乐,所以每个人都可以发布和喜欢其他人发布。

将数据写入Firebase并检索数据是一切都很好,但我有喜欢的问题。

我已经尝试了几个代码,但我不知道我是否在搞第二个孩子,甚至代码还不够好。

这是我的代码:

import UIKit
import Firebase

class PostTableViewCell: UITableViewCell {

@IBOutlet weak var messageLabel: UILabel!
@IBOutlet weak var usernameLabel: UILabel!
@IBOutlet weak var likeLabel: UILabel!

@IBOutlet weak var bckgView: UIView!

@IBOutlet weak var likeButton: UIButton!
@IBOutlet weak var unlikeButton: UIButton!

var postID: String!

@IBAction func likePressed(_ sender: Any) {

    let ref = Database.database().reference()
    self.likeButton.isEnabled = false
    /*let key = ref.child("posts").childByAutoId().key*/

    ref.child("Frusters").child(self.postID).observeSingleEvent(of: .value, with: { (snapshot) in

         if let likes = snapshot.value as? [String : AnyObject] {

                        let count = likes.count
                        self.likeLabel.text = "\(count) Likes"

                        let update = ["likes" : count]
                        ref.child("Frusters").child(self.postID).updateChildValues(update)

                        self.likeButton.isHidden = true
                        self.unlikeButton.isHidden = false
                        self.likeButton.isEnabled = true
                        }

    })

    ref.removeAllObservers()
    }


@IBAction func unlikePressed(_ sender: Any) {

  }
 } 

当我运行此代码时,一切正常,直到我按下Like,然后我收到此错误:

enter image description here

我尝试了其他几种.child方式而不是“postID”,没有任何效果。整天看这段代码并改变它很多,但没有结果。

你能帮帮忙吗?我做错了什么?

这是我的Firebase点头:

enter image description here

感谢。

0 个答案:

没有答案