从Firebase子级获取图像

从Firebase子级获取图像,firebase,swift3,xcode8,Firebase,Swift3,Xcode8,各位。我在从Firebase数据库中的子对象获取一大块图像时遇到问题。我正在做一个iOS项目,使用swift 3和XCode。基本上,毕竟,我的“image”变量返回“nil”,如果可以,请帮助我。以下是我正在使用的代码: let ref = FIRDatabase.database().reference().child("menu") ref.observeSingleEvent(of: .value, with: { (snapshot) in if

各位。我在从Firebase数据库中的子对象获取一大块图像时遇到问题。我正在做一个iOS项目,使用swift 3和XCode。基本上,毕竟,我的“image”变量返回“nil”,如果可以,请帮助我。以下是我正在使用的代码:

let ref = FIRDatabase.database().reference().child("menu")
        ref.observeSingleEvent(of: .value, with: { (snapshot) in
            if let dictionary = snapshot.value as? [String: AnyObject] {
                let image = dictionary["foodImageUrl"] as? String
                print(image as Any) // this returns nil
以及一个数据库结构的示例


我需要从菜单节点的所有子节点获取所有的“foodImageUrl”

您的快照。值是菜单中的子项列表,而不是每个节点的详细信息,因此您必须使用,然后在每个节点内使用
字典[“foodImageUrl”]?获取图像的字符串

试试这个

let ref = FIRDatabase.database().reference().child("menu")
    ref.observeSingleEvent(of: .value, with: { (snapshot) in
        for rest in snapshot.children.allObjects as! [FIRDataSnapshot] {
            if let dictionary = rest.value as? [String: AnyObject]{
                let image = dictionary["foodImageUrl"] as? String
                print(image as Any)
            } 
        }

你能举个例子吗,因为我搞不懂。是的,先生,我今天已经解决了这个问题。唯一的问题是,如果让dictionary=rest.value与follows
一样,您仍然必须保留此部分
?[字符串:AnyObject]
。无论如何,谢谢你的提示@Oleksiidniprovsky很高兴听到这个消息!