从数据库检索数据

时间:2019-07-10 09:37:47

标签: swift firebase-realtime-database

第一次在这里提问,对不起,如果我做错了。

无论如何。我正在使用Firebase数据库在“测验”应用程序中存储“结果”。存储数据时,看起来像这样

结果

counter

我想从中访问分数和用户名,并将其显示在HighScore表格视图中。问题是-我可以获取“结果”节点,但是由于结果的ID(即LjQ34gs7QoL1GMufiMsaddclose),我不知道如何访问分数和用户名。

我得到了数据快照,但是不确定如何“绕过” ID以获得评分和用户名。

希望我至少清楚地说明了问题所在。

 -LjQ34gs7QoL1GMufiMsaddclose
 Score: xx
 UserName: xx

 -LjQ3NeCoDGob8wnhstH
 Score: xx
 UserName: xx

1 个答案:

答案 0 :(得分:0)

您当前的代码为您提供一个包含所有用户结果的快照。您需要遍历子快照以获得每个用户的结果,然后使用childSnapshot(byName:)查找其特定属性:

let ref = Database.database().reference().child("Results")

ref.observe(.value) { (snapshot) in
    for case let userSnapshot as DataSnapshot in snapshot.children {
        print(userSnapshot.childSnapshot(forPath: "Score").value)
    }

}

另请参阅:

还有可能来自this list的更多内容。