Ios 从Firebase for Swift中的查询检索数据
我有以下数据库结构:Ios 从Firebase for Swift中的查询检索数据,ios,swift,firebase,firebase-realtime-database,Ios,Swift,Firebase,Firebase Realtime Database,我有以下数据库结构: Users user1 username : username1 otherdata : otherdata1 user2 username : username2 otherdate : otherdata2 我想要的是,当一个用户使用表视图顶部的uisearchbar时,在表视图中显示我的用户的用户名。我使用以下代码打印了每个用户的数据:` func searchBar(_ searchBar: UISea
Users
user1
username : username1
otherdata : otherdata1
user2
username : username2
otherdate : otherdata2
我想要的是,当一个用户使用表视图顶部的uisearchbar时,在表视图中显示我的用户的用户名。我使用以下代码打印了每个用户的数据:`
func searchBar(_ searchBar: UISearchBar, textDidChange searchText: String) {
ref = Database.database().reference()
let strSearch = searchBar.text
ref.child("Users").queryOrdered(byChild: "username").queryStarting(atValue: strSearch).queryEnding(atValue: strSearch! + "\u{f8ff}").observeSingleEvent(of: .value, with: { (snapshot) in
for snaps in snapshot.children {
print(snaps)
}
}) { (err) in
print(err)
}
}
但我被卡住了,因为我不知道如何检索每个用户的用户名。有人能告诉我怎么做吗
func searchBar(_ searchBar: UISearchBar, textDidChange searchText: String) {
ref = Database.database().reference()
let strSearch = searchBar.text
ref.child("Users").queryOrdered(byChild: "username").queryStarting(atValue: strSearch).queryEnding(atValue: strSearch! + "\u{f8ff}").observeSingleEvent(of: .value, with: { (snapshot) in
var fetchedList = snapshot.value as! [AnyObject]
for obj in fetchedList {
print(obj["username"] as? String)
print(obj["otherdata"] as? String)
}
}) { (err) in
print(err)
}
}
你会得到这样的回应
[{username : username1}, {username : username2}]
事实上,我没有说我有每个用户的其他数据,我编辑了我的帖子,谢谢你的回答,但我仍然不知道如何打印每个用户名,我是否在fetchedList中做了一个循环,然后我不知道该添加什么,这也会得到其他数据:[{username:username1,otherdata:otherdata1},{username:username2,otherdata:otherdata2}]试试我的答案,看看你的回答。是的,我有,但很抱歉,我不知道如何在fetchedList中打印obj的username1和username2{print(obj[“username”]as?String)print(obj[“otherdata”]as?String)}