我的Firebase数据库中有一个名为"用户"其中包含电子邮件和姓名的密钥。我尝试创建一个基于电子邮件地址查找用户的简单查询,但查询未返回任何结果。
ionic.project
我的控制台始终打印"用户不存在"即使电子邮件文本字段与我的数据库中显示的内容相同。
关于什么是错误的任何想法?
谢谢!
答案 0 :(得分:2)
试试这个:
let usersRef = self.rootRef.childByAppendingPath("users")
let email = emailTextField.text
usersRef.queryOrderedByChild("email").queryEqualToValue(email)
.observeEventType(.Value, withBlock: { snapshot in
if snapshot.exists() {
print("user exists")
} else {
print("user doesn't exist")
}
})
您需要小心,但......。值将返回所有节点,其电子邮件地址等于您要查找的地址。一般情况下,如果有5,则.Value将包含全部5,因此迭代快照会更安全。
for child in snapshot.children {
let email = child.value["whatever key:value you want"] as! String
}