如何将每个用户链接到Firebase for Swift 3中的数据?

时间:2017-07-25 16:36:47

标签: ios firebase swift3 firebase-realtime-database

我创建了一个与Firebase集成的项目。它具有注册和登录功能。我有个人信息表填写个人用户。但是当用户不同时,所有用户都会显示所有数据。我需要显示与链接用户相关的信息。该人员应该只能访问他/她的数据库。我在Swift 3中找不到合适的解决方案。

1 个答案:

答案 0 :(得分:2)

从最好的情况我可以看出,您似乎没有引用数据库中的正确节点。您看到了所有用户数据,因为您的变量messageRef指向/users。如果您希望用户只看到他们的数据,那么您需要整理数据,以便在保存messageItem/users/{user_id}。然后首先获取user_id并从其新位置(/users/{user_id})中读取它,然后正确访问它。

所以我要改变这些:

override func viewDidLoad() {
    super.viewDidLoad()

       messageRef = databaseRef.child("Users")

    // Do any additional setup after loading the view.
}

到此:

override func viewDidLoad() {
    super.viewDidLoad()
       guard let user = Auth.auth().currentUser else { return }
       messageRef = databaseRef.child("Users/\(user.uid)")
    // Do any additional setup after loading the view.
}