Ios 从firebase检索用户信息

Ios 从firebase检索用户信息,ios,firebase,firebase-realtime-database,swift4,Ios,Firebase,Firebase Realtime Database,Swift4,我知道这个问题被问了很多,但似乎没有一个解决方案对我有效。我一直在尝试线程中的多个解决方案,例如,但它没有将任何内容打印到我的控制台。 我正在尝试从数据库中检索用户类型,但我不知道如何检索 func pushUserInfo(){ let ref = Database.database().reference() let infoDict = ["First name": firstName.text!, "Last name": lastName.text!, "hours":

我知道这个问题被问了很多,但似乎没有一个解决方案对我有效。我一直在尝试线程中的多个解决方案,例如,但它没有将任何内容打印到我的控制台。 我正在尝试从数据库中检索用户类型,但我不知道如何检索

func pushUserInfo(){
    let ref = Database.database().reference()
    let infoDict = ["First name": firstName.text!, "Last name": lastName.text!, "hours": 0, "isUser" : "user"] as [String : Any]
    let users = ref.child("users").child(username)
    users.setValue(infoDict)
}
显示[type:user]的部分有两个选项,用户或管理员

上面的屏幕截图是Firebase实时数据库。
我试图检索用户的类型,但不知道如何检索。请帮我弄清楚这一点,如果可能的话,解释一下代码,因为我对Firebase的总体了解不多。我试着阅读他们的firebase文档,但我仍然没有真正理解。

看起来您的数据设置很好,只是您的用户名属性似乎是由两个选项组成的串联字符串,可能是firstName.text和lastName.text。因此,这将使其无法进行查询。第一步是将其展开为字符串:

让username=\firstName.text\lastName.text! 完成此操作后,您可以按如下方式查询该数据:

让username=\firstName.text\lastName.text! 让ref=Database.Database.reference.childusers/\username ref.observeSingleEventof:.值,其中:{snapshot in //现在您可以访问类型值 设value=snapshot.value为?NSDictionary 让type=值?[type]作为字符串?? }{错误 printerror.localizedDescription }
您可能还需要重新考虑在属性名称中使用空格,或者使用lastName而不是lastName。以后编写代码会更容易。

谢谢您的帮助!我很感激你的建议。