2015-09-24 2 views
0

У меня есть массив элементов в столбце в Parse.Как удалить объект из массива в Parse with Swift 2.0

Я могу принести этот массив с кодом:

let query:PFQuery = PFQuery(className: "Names") 

    query.whereKey("date", greaterThan: NSDate()) 
    query.findObjectsInBackgroundWithBlock { 
     (object, error) -> Void in 
     if object != nil 
     { 
      if(object!.count != 0) 
      { 
       for messageObject in object! { 
        self.arrayNames = ((messageObject as! PFObject)["arrayNames"] as? [String])! 
       } 
      } else { 
       print("No Objects") 
      } 
     } 
    } // self.arrayNames = ["Aruna", "Bala", "Chitra", "Divya"] 

В этом я хочу, чтобы удалить один элемент и снова сохранить его в разборе.

Я могу удалить его локально как removeAtIndex, но как я могу удалить это из Parse?

ответ

1

После загрузки вашего массива, удалить один элемент, который вы не хотите, переназначить новый массив с извлеченным объектом, а затем спасти.

-1

Если вы читаете документацию вы найдете one of the delete methods полезно, такие как deleteInBackgroundWithBlock:

object.deleteInBackgroundWithBlock { (succeeded: Bool, error: NSError?) -> Void in 
    // do whatever you need to do 
} 
+0

Я хочу удалить только один элемент в массиве в столбце в разделе «Анализ». 'deleteInBackgroundWithBlock' полностью удалит массив в столбце. – AAA

0

В названиях, если бы я хотел, чтобы удалить Аруна,

self.arrayNames.removeAtIndex(0) 

Затем обновить этот массив в синтаксический анализ

let query:PFQuery = PFQuery(className: "Names") 

query.whereKey("date", greaterThan: NSDate()) 
query.findObjectsInBackgroundWithBlock { 
    (object, error) -> Void in 
    if object != nil { 
     object!.setValue(self.arrayNames, forKey: "arrayNames") 
     object!.saveInBackgroundWithBlock { 
       (success: Bool, error: NSError?) -> Void in 
       if(success) { 
        print("Success")     
       } else { 
        print("Error") 
       } 
     } 
    } 
} 

Я обнаружил, что, я не могу сразу удалить один элемент из array в столбце в Parse. Поэтому я обновляю этот массив с помощью своего локального массива. Оно работает!

Смежные вопросы