2015-06-14 2 views
1

Ниже мой код, который я использую для запроса объекта от Parse:Правильно ли я запрашиваю и подклассифицирую?

func findEmployeeForLoggedInUser(completion: (array: [AnyObject], error: String?) -> Void) { 
    var query = PFQuery(className: "Employee") 
    query.whereKey("employerId", equalTo: PFUser.currentUser()!.objectId!) 
    query.findObjectsInBackgroundWithBlock { (results, error) -> Void in 

     println(results) 

     var employeeArray = results 


     if let error = error { 
      let errorString = error.userInfo?["error"] as? String 
      if let objects = employeeArray { 
       completion(array: objects, error: errorString) 
      } else { 
       completion(array: [], error: errorString) 
      } 
     } else { 
      completion(array: employeeArray!, error: nil) 
     } 
    } 
} 

Ниже приведен код, в котором был объявлен подкласс PFObject:

class PFEmployee: PFObject, PFSubclassing { 

override class func initialize() { 
    self.registerSubclass() 
} 
class func parseClassName() -> String { 
    return "Employee" 
} 

@NSManaged var name: String 
    @NSManaged var jobDesc: String 
    @NSManaged var numberOfPoints: Int 
    @NSManaged var education: String 
    @NSManaged var birthday: String 
    @NSManaged var employerId: String 
    @NSManaged var profilePicture: PFFile? 
    @NSManaged var email: String 
    @NSManaged var commentary: String 
} 

Мое приложение рушится, и Я подозреваю, что это имеет какое-то отношение к этому. Правильно ли я делаю все это?

ответ

0

Используйте этот сбой свободный код ...

var stuffarray = [String]() 

     var query = PFQuery(className:"ClassName") 

     query.findObjectsInBackgroundWithBlock { 
      (objects: [AnyObject]?, error: NSError?) -> Void in 

      if error == nil { 
       // The find succeeded. 
       println("Successfully retrieved \(objects!.count) scores.") 
       // Do something with the found objects 
       if let objects = objects as? [PFObject] { 
        for object in objects { 

         stuffarray.append(object.valueForKey("Column")! as! String) 



        } 
       } 
      } else { 
       // Log details of the failure 
       println("Error: \(error!) \(error!.userInfo!)") 
      } 

      dispatch_async(dispatch_get_main_queue()) { 
       self.alert("\(stuffarray)", Message: "") 
      } 
     } 
Смежные вопросы