我有一个firebase应用程序,我希望能够搜索用户,但是我遇到的问题是,如果数据库值为hello
,如果用户在搜索栏中输入hello
,它将返回true
,但如果为Hello
,则返回false。我希望能够将小写和大写视为相同,因此即使用户键入hElLo
,它也会返回true。下面是我的代码。
func fsFindUser(q user: String, completion: @escaping CompletionHandler) {
let userRef = fsRef.collection(USERS_REF)
let query = userRef.whereField("user", isEqualTo: user)
query.addSnapshotListener { (snapshot, error) in
if let error = error {
print("Error getting document: \(error)")
} else if (snapshot?.isEmpty)! {
completion(false)
} else {
completion(true)
}
}
}
答案 0 :(得分:1)
答案是您在节点中存储了两组数据;一个用于小写查询,另一个用于显示
users
uid_0
queryable: "mcdonald"
display: "McDonald"
uid_1
queryable: "van winkle"
display: "Van Winkle"