Q:

iOS Swift & Parse - getDataInBackground not working? 

Currently learning Swift & iOS.  I try to access with Parse a saved picture.  However, I can't access it with getDataInBackground(block:).  
Here's my code: 
//
//  ViewController.swift
//  Instragram
//
//  Created by Macbook Pro on 22.07.17. 
//  Copyright © 2017 Macbook Pro.  All rights reserved. 
//

import UIKit
import Parse

class ViewController: UIViewController {
    @IBOutlet weak var picture: UIImageView! 
    @IBOutlet weak var senderLbl: UILabel! 
    @IBOutlet weak var recieverLbl: UILabel! 
    @IBOutlet weak var messageLbl: UILabel! 

    override func viewDidLoad() {
        super.viewDidLoad()

        // Creating tables and data in database
        let imageData = UIImageJPEGRepresentation(picture.image!,  0.5)

        let file = PFFile(name: "picture.jpg", data: imageData!) 

        let table = PFObject(className: "messages")
        table["sender"] = "Akhmed"
        table["reciver"] = "Bob"
        table["picture"] = file
        table["message"] = "Hello!" 
        table.saveInBackground {(success, error) -> Void in
            if(success){
                print("Saved successful")
            } else {
                print(error!) 
            }
        }

        //Recieving Data from the Server
        let information = PFQuery(className: "messages")
        information.findObjectsInBackground{(objects: [PFObject]?,  error) -> Void in
            if error == nil {
                for object in objects!{ 
                    self.senderLbl.text = object["sender"] as?  String
                    self.recieverLbl.text = object["reciver"] as?  String
                    self.messageLbl.text = object["message"] as?  String

                    object["picture"].getDataInBackground(...)
                }
            } else {
                print(error!) 
            }
        }
    }
}

Down after I access the name, receiver and message string I try to access an image that has been saved on there server with:
object["picture"].getDataInBackground(block:) 

However, Swift won't even autocorrect anymore after I've typed object["picture"].  I get also an error: 

'Value of type "Any" has no Member 'getDataInBackground(block:)'

Any ideas what's wrong?  It seems to me that Swift can't find the string picture even though the image is saved on the server under the string "picture".  

A:

You need to first cast it as a PFFfile object and then retrieve the actual image data with getDataInBackground function like this:
let imageFile = object["picture"] as?  PFFile
imageFile?.getDataInBackground (block: { (data, error) -> Void in
      if error == nil {
                     if let imageData = data {
                         self.myImage = UIImage(data:imageData)
                     }
      }
})

