Здесь я пытаюсь установить поле состояния для каждого документа в коллекции (в mongoDB на Parse-Server / Heroku).Код ниже не очень сложен, но по какой-то причине не работает.Я надеюсь, что новый взгляд сможет указать, что не так.
let query = PFQuery(className: "Book_List")
query.limit = 1024
query.findObjectsInBackground {
(objects:[PFObject]?, error:Error?) -> Void in
if (error == nil && objects != nil) {
for book in objects! {
book.setObject("0", forKey: "status")
book.saveInBackground {
(success: Bool, error: Error?) in
if !success {print("FAILED.")} else {print("OK-OK.")}
if error != nil {print("Error = \(String(describing: error))")}
}
}
}
if error != nil {
print("Error = \(error.debugDescription)")
}
if objects == nil {
print("We haven't found anything on Parse!!")
}
}
Я ожидаю, что это запустится и установит поле ({"status": "0"}) в каждом цикле.Но я вижу это только в консоли отладки:
FAILED.
Error = Optional(Error Domain=Parse Code=101 "Object not found." UserInfo={code=101, temporary=0, error=Object not found., NSLocalizedDescription=Object not found.})
... [Error]: Object not found. (Code: 101, Version: 1.17.1)
Поскольку я получаю объекты с помощью PFQuery-findObjectsInBackground, они где-то существуют.Так почему я получаю это сообщение об ошибке?