【问题标题】:How can I create a user with multiple attributes in Firebase with Swift?如何使用 Swift 在 Firebase 中创建具有多个属性的用户?
【发布时间】:2016-01-31 09:10:28
【问题描述】:

我对 Firebase 很陌生(仅几个小时),但仍在尝试吸收它的大部分概念。我遵循了文档,但仍然没有找到我的问题的直接答案。我的应用程序中有一个注册表单......它需要用户名、姓名、手机等。我使用了 firebase createUser 函数,但它只创建了一个带有电子邮件和密码的用户。

如何创建具有多个属性(姓名、手机、用户名等)的用户?稍后,我想查询用户名并获取与其相关的所有属性,因此我需要拥有这些属性。

附:来自 Parse,这并不那么简单。

【问题讨论】:

    标签: ios swift firebase firebase-realtime-database


    【解决方案1】:

    传统上,您会在 Firebase 中创建一个 /users 节点,其中包含您要存储的有关该用户的任何其他信息。

    使用 uid (user_id) 作为每个用户的节点名称。

    users
      uid_0
       name: "Bill"
       food: "Pizza"
      uid_1
       name: "Ted"
       food: "Tacos"
    

    这个问题之前有人问过,所以请在提问之前尝试搜索与您类似的问题。

    这里有更多信息Firebase Users Node

    【讨论】:

    • 会试一试,然后就结果回复你
    【解决方案2】:

    我假设由于您将拥有多个用户,因此您将在他们访问您的应用之前对其进行身份验证。你可以先在 Swift 中创建一个 Struct 文件,如下:

    import Foundation
    import Firebase
    
    struct User {
    let uid: String
    let email: String
    let usermobilenumber : String
    let userFirstName: String
    let userLastName : String
    
    // Initialize from Firebase
    init(authData: FAuthData) {
        uid = authData.uid
        email = authData.providerData["email"] as! String
        userhandle = authData.providerData["userhandle"] as! String
        userFirstName = authData.providerData["userFirstName"] as! String
        userLastName = authData.providerData["userLastName"] as! String
    }
    
    // Initialize from arbitrary data
    init(uid: String, email: String, userLastName: String, userFirstName: String, usermobilenumber: String) {
        self.uid = uid
        self.email = email
        self.userLastName = userLastName
        self.userFirstName = userFirstName
        self.usermobilenumber = userhandle
    
    }
    }
    

    使用文本字段,执行用户输入任务。然后,您需要访问要写入数据的 Firebase 节点(您之前可能已将其保存为 ref = Firebase(url: "my-awesome-app.firebaseio.com/userinfo"),而只是 ref.updateChildValues()

    我的回答是帮助您入门的示意图,因为 Firebase 文档非常详尽,并且可以回答初学者遇到的大多数问题。您应该阅读this website,并通过 API 参考来帮助您完全实现您想要的。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-08-03
      • 2021-02-10
      • 2018-11-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-11-13
      • 1970-01-01
      相关资源
      最近更新 更多