我想从Firebase数据库中获取具有子名称" totalExercise"的特定值。并使用swift打印它。这是firebase数据库的当前内容。
这是我在swift中尝试获取并打印totalExercise值的代码
答案 0 :(得分:1)
这是对您的问题的字面答案,但请阅读
let loginRef = self.ref.child("fblogintest-35707").child("Optional(\"gl8...\")")
loginRef.observeSingleEvent(of: .value, with: { snapshot in
let val = snapshot.value as! [String: Any]
let te = val["totalExercise"]
print(te)
})
gl8是一个很长的字符串,我不想重新输入,所以只需从你的问题中插入。此代码将打印' 10'
话虽如此,Firebase结构和问题中的代码存在许多问题。
正如您所看到的,无论代码是什么,在您的问题中创建密钥都是将它们创建为Optionals,并且不应该以"可选的实际字符串(" gl8)来完成..")正在写入Firebase ..这就是为什么你在结构中看到“可选”一词的原因。
你应该对ref进行一些解包/错误检查吗?和用户?如果它们是零(它们是可选项),代码也不会崩溃。
如果你还没有这样做,请阅读Optionals,因为它们非常强大,但你必须围绕如何有效地实施它们来保护你的代码。