Swift Firebase 快照查询缺少子项
Swift Firebase Snapshot query missing child
我将一些设置存储在 firebase 数据库中,并从应用程序访问这些设置。它在前 3 个设置中工作正常,但是当我尝试添加一个新设置时,我无法做到这一点。
代码,我用的是:
func getLanguage(){
ref = DatabaseRef.settingsRef
//ref.observe(.value, with: { (snapshot) in
ref.observeSingleEvent(of: .value, with: { (snapshot) in
let valueL = snapshot.value as? NSDictionary
if (valueL?.count)! > 0 {
self.lang = ((valueL!["lang"])! as? String)!
}
})
}
DatabaseRef 是一个结构文件,用于存储所有引用。设置参考:
static let settingsRef = Database.database().reference().child("events").child(event).child("settings")
当我运行这个方法时,我在self.lang = ((valueL!["lang"])!as?String)!
Thread 1: Fatal error: Unexpectedly found nil while unwrapping an Optional value
当然,我仔细检查了我的数据库结构和路径,但我无法弄清楚问题出在哪里,因为我的设置数据库如下所示:
"settings" : {
"contLog" : "true",
"lang" : "en",
"showStat" : "true",
"useGate" : "true"
},
快照看起来像这样:
PS:我知道 "true" 不是 bool,它只是用于字符串测试。
感谢您的回答,这是一个缓存问题。
当我从我的 phone(和模拟器)中删除应用程序并重建它时,一切正常。 iOS 以某种方式存储了较旧的快照..
我将一些设置存储在 firebase 数据库中,并从应用程序访问这些设置。它在前 3 个设置中工作正常,但是当我尝试添加一个新设置时,我无法做到这一点。
代码,我用的是:
func getLanguage(){
ref = DatabaseRef.settingsRef
//ref.observe(.value, with: { (snapshot) in
ref.observeSingleEvent(of: .value, with: { (snapshot) in
let valueL = snapshot.value as? NSDictionary
if (valueL?.count)! > 0 {
self.lang = ((valueL!["lang"])! as? String)!
}
})
}
DatabaseRef 是一个结构文件,用于存储所有引用。设置参考:
static let settingsRef = Database.database().reference().child("events").child(event).child("settings")
当我运行这个方法时,我在self.lang = ((valueL!["lang"])!as?String)!
Thread 1: Fatal error: Unexpectedly found nil while unwrapping an Optional value
当然,我仔细检查了我的数据库结构和路径,但我无法弄清楚问题出在哪里,因为我的设置数据库如下所示:
"settings" : {
"contLog" : "true",
"lang" : "en",
"showStat" : "true",
"useGate" : "true"
},
快照看起来像这样:
PS:我知道 "true" 不是 bool,它只是用于字符串测试。
感谢您的回答,这是一个缓存问题。 当我从我的 phone(和模拟器)中删除应用程序并重建它时,一切正常。 iOS 以某种方式存储了较旧的快照..