【问题标题】:how to store user data in ios firebase with swift 4如何使用swift 4将用户数据存储在ios firebase中
【发布时间】:2018-12-05 08:50:51
【问题描述】:
@IBAction func usernameContinueBtnPressed(_ sender: Any) {

    if let email = emailFieldSignUp.text, let password = passwordFieldSignUp.text {

        Auth.auth().createUser(withEmail: email, password: password) { (user, error) in
            if let error = error {
                print(error.localizedDescription)
            }
            else{
                let userData = ["firstName": self.firstNameSignUpField.text! as String ,
                                "lastName": self.lastNameSignUpField.text! as String,
                                "username": self.usernameSignUpField.text! as String
                                ]
                let ref = Database.database().reference()
                ref.child("users").setValue(userData)

                print("Sign Up Successfully.")
                self.presentFeedPage()
            }
        }
    }
}

嗨,我真的是 xcode 的新手。我想知道如何修复此代码,以便当用户使用电子邮件注册时,他们可以将他们的名字、姓氏和用户名存储在 firebase 数据库中。

【问题讨论】:

    标签: swift firebase firebase-realtime-database firebase-authentication


    【解决方案1】:

    要保存用户数据,首先需要初始化数据库。你在viewDidLoad()这样做

    首先,将其添加到您的 viewDidLoad() 函数中:

    var ref: DatabaseReference!
    
    override func viewDidLoad() {
        super.viewDidLoad()
        ref = Database.database().reference()
    
       // ... //
    }
    

    之后,要将用户存储在自己的记录ID中,您需要指定:

    self.ref.child("users").child(user.uid).setValue(userData)
    

    或者:

    @IBAction func usernameContinueBtnPressed(_ sender: Any) {
    
    if let email = emailFieldSignUp.text, let password = passwordFieldSignUp.text {
    
        Auth.auth().createUser(withEmail: email, password: password) { (user, error) in
            if let error = error {
                print(error.localizedDescription)
            }
            else{
                let userData = ["firstName": self.firstNameSignUpField.text! as String ,
                                "lastName": self.lastNameSignUpField.text! as String,
                                "username": self.usernameSignUpField.text! as String
                                ]
    
    
                self.ref.child("users").child(user.uid).setValue(userData)
                print("Sign Up Successfully.")
                self.presentFeedPage()
            }
        }
    }
    

    }

    我还向您推荐他们的文档,我喜欢 firebase 的两件事,即速度和他们的文档。

    Read and Write Data on iOS

    【讨论】:

      猜你喜欢
      • 2016-05-18
      • 2019-01-16
      • 1970-01-01
      • 2017-07-29
      • 2017-09-25
      • 1970-01-01
      • 1970-01-01
      • 2020-07-25
      • 1970-01-01
      相关资源
      最近更新 更多