2015-09-04 43 views
0

我試圖在後臺找到對象ID,以便我可以在後臺成功取消固定和刪除對象。然而,objectID是由於某種原因返回一個零值,從而導致應用程序崩潰。如何在解析中獲取對象ID

下面是一些代碼 -

(imagesToDelete是PFFile數組)

 for object in imagesToDelete 
     { 
      var imageObject = PFObject(className: "img") 
      imageObject["theImg"] = object 
       //Object ID Returns nil 
      var objID = imageObject.objectId 

      //fatal error: unexpectedly found nil while 
      imageObject.removeObjectForKey(objID!) 
      imageObject.unpinInBackgroundWithBlock({ (success, error) -> Void in 
       if error == nil 
       { 
        imageObject.deleteEventually() 
        println("Objects deleted!") 
       } 
       else 
       { 
        println(error) 
       } 

      }) 

     } 
+0

你直接從解析下載? – Lamar

回答

0

VAR OBJID = imageObject.objectId永遠不會起作用,因爲imageObject是PFObject的一個實例,所以你只能使用該對象保存特定的ID或使用parse提供的默認對象ID。 例子:

// let's save an object using a specific id     
    var savingObject = PFObject(classname:"") 
    savingObject["id"] = 123213 
    // then you save this object to parse 

當涉及到刪除的對象必須查詢使用PFQuery背景和目標,那麼你可以得到我們的具體ID或默認ID OBJECTID從parse。

例子:

// let's query and delete that object   
     var query = PFQuery(classname:"") 
     query.whereKey("id", equalTo:123213) 
     // then you use that findObjectInBackgroundWithBlock() method then delete the object. 

即使你是在本地保存,你很可能使用相同的概念希望有所幫助。

+0

謝謝!我得到了一切工作。我會爲你投票答案! –