Firebase iOS - 从其他视图控制器

时间:2017-09-30 17:01:55

标签: ios swift firebase firebase-realtime-database

我有两个视图控制器,一个用户注册(电子邮件,密码)自己进入应用程序,另一个用户可以选择用户名,我设法让第一个视图控制器与Firebase一起使用这意味着我的用户已通过身份验证,我设法将他的电子邮件地址输入实时数据库,但我在更新他选择的用户名到数据库时遇到问题,我试过这个:

self.ref.child("Users").child(user.uid).setValue(["username": usernameTextfield.text])

我认为这不起作用,因为我的viewcontroller不知道对象用户。有人可以告诉我该怎么做。谢谢

1 个答案:

答案 0 :(得分:1)

如果您在第一个视图控制器的上下文中创建了一个user对象,那么您是对的,您将无法从第二个视图控制器访问它。

但是,您可以通过调用user在第二个视图控制器上重新创建此Auth.auth().currentUser对象,如下所示:

if let user = Auth.auth().currentUser {
    // use the user object here
    self.ref.child("Users").child(user.uid).setValue(["username": usernameTextfield.text])
} else {
    print("no user is logged in")
}