gpt4 book ai didi

ios - Firebase 中的嵌套信息

转载 作者:行者123 更新时间:2023-11-30 12:41:45 25 4
gpt4 key购买 nike

如何访问快照“更深”级别的信息?我是否总是需要启动另一个查询?为了向您展示我的意思,我有我的结构的屏幕截图: Screenshot of DataStructure

我正在加载查询中的所有帖子,我可以读取作者信息等,但如何获取选项内的信息?我尝试了以下方法:

ref.child("posts").child("details").observe(.childAdded, with: { (snapshot:FIRDataSnapshot) in

if snapshot.value == nil {
return
}
let post = Post()
guard let snapshotValue = snapshot.value as? NSDictionary else {
return
}
post.postID = snapshot.key
post.title = snapshotValue["title"] as? String
post.postDescription = snapshotValue["description"] as? String
if (post.postDescription == ""){
post.postDescription = "No description has been entered for this post.."
}
post.timestamp = snapshotValue["timestamp"] as? NSNumber

let options = snapshotValue["options"]
print(options)

当我打印选项时,我可以看到信息,但是当我尝试将其转换为 NSDictionary 或其他东西来访问它时,它会打印 nil?我还可以定义一个新属性,例如 post.options 如果这有帮助的话?选项并不总是只有 0 和 1,它是变量,所以我需要迭代它们。我怎样才能做到这一点?

最佳答案

根据对原始问题的评论,您可以访问如下选项值:

if let options = snapshotValue["options"] as? [Any] { 
for option in options {
if let optionDict = option as? [String:Any] {
let votes = optionDict["votes"] as? Int
let url = optionDict["uri"] as? String
}
}
}

关于ios - Firebase 中的嵌套信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42164608/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com