2017-04-10 23 views
3

我查询到服务器以下斯威夫特删除多个对象,在一次解析服务器

let query = PFQuery(className: "posts") 
      query.whereKey("uuid", equalTo: Ncell.uuidLbl.text!) 
      query.findObjectsInBackground { (objects:[PFObject]?, error:Error?) in 
       if error == nil { 
        for object in objects! { 
         object.deleteInBackground(block: { (success:Bool, error:Error?) in 
          if success{ 

          } 
         }) 
        } 
       } 
      } 

而不是使用一个循环,并删除每个单独的对象,我想知道是否有可能删除所有找到的对象立即保存请求。

+0

我敢肯定有一个删除多个对象的方法,寻找它在PFObject'的'定义 – EmilioPelaez

回答

4

我想知道是否有可能在一次

是要删除Parse iOS SDK所有找到的对象上Parse server一次删除背景多个对象,你可以使用deleteAllInBackground

你可以用两种不同的方式使用它:

PFObject.deleteAll(inBackground: [PFObject]?) 
PFObject.deleteAll(inBackground: [PFObject]?, block: PFBooleanResultBlock?) 

例如:

let query = PFQuery(className: "posts") 
query.whereKey("uuid", equalTo: Ncell.uuidLbl.text!) 
query.findObjectsInBackground { (objects:[PFObject]?, error:Error?) in 
    if error == nil { 
     PFObject.deleteAll(inBackground: objects, block: { (success:Bool, error:Error?) in 
       if success { 

       } 
      }) 
     } 
    } 

我希望我的回答对您有所帮助