gpt4 book ai didi

ios - 使用 firebase 3.0 + swift 检查用户是否存在

转载 作者:搜寻专家 更新时间:2023-10-30 22:11:27 25 4
gpt4 key购买 nike

我有一个应用程序,在用户使用 Firebase 身份验证后,它将数据存储在 Firebase 数据库中。在存储数据之前,我想检查用户提供的用户名是否已经存在于数据库中。所以如果它不存在我可以给用户这个唯一的用户名(就像每个用户都有一个唯一的用户名)。所以我有一个 textField,用户可以在其中输入他的用户名,然后按 Next。然后应用程序应该检查用户名是否存在,并告诉用户是否需要更改。

所以我用来检查用户名是否存在的代码:

        let databaseRef = FIRDatabase.database().reference()

databaseRef.child("Users").observeSingleEventOfType(.Value, withBlock: { (snapshot) in

if snapshot.hasChild(self.usernameTextField.text!){

print("user exist")

}else{

print("user doesn't exist")
}
})

所以每次按下下一个按钮时,都会调用这段代码。这样做的问题是结果始终与第一次搜索相同(即使在 textField 值更改之后)。例如,如果我搜索 Jose,而 Jose 存在于我的数据库中,那么将打印“user exist”。但是当我将 textField 更改为不存在的名称时,它仍然显示“用户存在”。

最佳答案

我发现我需要将 .Value 更改为 FIRDataEventType.Value

 if (usernameTextField.text?.isEmpty == false){
let databaseRef = FIRDatabase.database().reference()

databaseRef.child("Users").observeSingleEventOfType(FIRDataEventType.Value, withBlock: { (snapshot) in

if snapshot.hasChild(self.usernameTextField.text!){

print("true rooms exist")

}else{

print("false room doesn't exist")
}


})

关于ios - 使用 firebase 3.0 + swift 检查用户是否存在,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37824590/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com