我目前正在尝试从实时数据库中读取数据。用户成功登录后,将调用以下功能。
数据库的结构如下:
driven
- users
- uid
- monthlyStartKm
- currentKm
...
我有以下代码读取数据:
guard let uid = Auth.auth().currentUser?.uid else { return }
let databaseRef = Database.database().reference()
databaseRef.child("users").child(uid).observeSingleEvent(of: .value, with: { (snapshot) in
let value = snapshot.value as? NSDictionary
let monthlyStartKmData = value?["monthlyStartKm"] as? String ?? ""
let currentKmData = value?["currentKm"] as? String ?? ""
....
以某种方式,monthlyStartKmData和currentKmData返回nil
。 我忘记了什么?
编辑:
print(value)
打印以下内容:
Optional({
monthlyStartKm = 15000;
currentKm = 15250;
...
})
第二次修改:
这样保存,startKm和currentKm均为Int
类型:
let userObject = [
"monthlyStartKm": startKm,
"currentKm": currentKm,
...
] as [String: Any]