2016-12-01 2 views
0

Я создаю приложение iOS, и я пытаюсь удалить строку из UITableView. Я также использую Parse в качестве мобильного сервера приложения. Вот код для удаления метода:iOS Swift 3 Удаление строки из TableView с использованием Parse

override func tableView(_ tableView: UITableView, commit editingStyle: UITableViewCellEditingStyle, forRowAt indexPath: IndexPath) { 
    if editingStyle == .delete { 
     // Delete the row from the data source 
     let query = PFQuery(className: "Receipts") 
     let currReceipt = receipts[indexPath.row] 
     query.whereKey("objectId", equalTo: currReceipt.objectId!) 
     query.findObjectsInBackground(block: { (objects, error) in 
      if error != nil { 
       self.createAlert(title: "Oops! Something went wrong number 1!", message: "We could not delete the receipt") 
       print("THERE WAS AN ERROR DELETING THE OBJECT") 
      }else{ 
       for object in objects!{ 
        self.receipts.remove(at: indexPath.row) 
        object.deleteInBackground() 
        self.table.reloadData() 
       } 
      } 
     }) 
    } 
} 

Просто уточнить, будет только одна расписка в базе данных с любой заданной «ObjectId», поэтому query.findObjectsInBackground должен возвращаться только один объект.

Когда я пытаюсь удалить строку в симуляторе, я получаю сообщение об ошибке «Объект не найден», хотя я вижу, что объект существует в базе данных. Что я делаю не так?

ОБНОВЛЕНИЕ Найденное решение после долгого поиска. Для всех, кого это интересует, это связано с значениями ACL по умолчанию для разрешений для чтения и записи. Вот ссылка на ответ: Parse weird bug in Swift that causes ACL write permissions to change to an objectId

ответ

0

Это может быть опечатка, но почему у вас есть! в этой строке?

query.whereKey("objectId", equalTo: currReceipt.objectId!) 
+0

Когда нет "!" Я получаю предупреждение о том, что выражение «[выражение]] неявно принуждается от« String »? Любому " –

+0

Нашли мое решение после нескольких дней поиска ... В случае, если вам было интересно: http://stackoverflow.com/questions/34926827/parse-weird-bug-in-swift-that-causes-acl-write -Permissions к изменению к ан-объективистские –

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