2016-09-18 1 views
1

Я пытаюсь изменить содержимое в массиве с именем testArray в классе Collabs, а затем сохранить его обратно на сервер синтаксического анализа.Swift [Ошибка]: объект не найден. (Код: 101, Версия: 1.12.0)

@IBAction func addToArray(_ sender: AnyObject) { 

    var objectToSave: PFObject? 

    let query = PFQuery(className: "Collabs") 
    query.getObjectInBackground(withId: collabID) { (object, error) in 

     if error != nil { 

      print(error) 

     } else if let content = object { 

      objectToSave = content 
     } 

     if objectToSave != nil { 

      objectToSave!["testArray"] = ["foo","bar","foobar"] 

      objectToSave!.saveInBackground(block: { (success, error) in 
       if error != nil { 
        print("ERROR") 
       } else { 
        print("SUCCESS") 
       } 
      }) 

     } 
    } 

Я видел довольно много сообщений, которые говорят о правах доступа, однако, насколько мне известно, что разработчики класса имеют общественные читать и писать включены

+0

Поместите свой код, который начинается с линии 'если objectToSave! = ноль {' внутри, если другое заявление, и он будет работать ... –

+0

к сожалению, я пытался ваше предложение и получил ту же ошибку. Я был бы рад опубликовать мой код, пробовав ваш ответ, если вы хотите его увидеть. – user3779795

ответ

0

жаль я не проверить его, что глубоко перед тем попробуйте это

var objectToSave: PFObject? 

    let query = PFQuery(className: "Collabs") 
    query.getObjectInBackground(withId: collabID) { (object, error) in 
     if error != nil { 
      print(error) 
     } else { 
      if let content = object { 
       objectToSave = content 
      } 
      if objectToSave != nil { 

       objectToSave!["testArray"] = ["foo","bar","foobar"] 

       objectToSave!.saveInBackground(block: { (success, error) in 
        if error != nil { 
         print("ERROR") 
        } else { 
         print("SUCCESS") 
        } 
       }) 
      } 
     } 
    } 
+0

Спасибо @Mazel Tov, оказалось, что я столкнулся с проблемами с правами доступа, о которых я упоминал. Хитрость в том, чтобы ввести: пусть = PFACL ACL() acl.getPublicWriteAccess = истинный acl.getPublicReadAccess = истина user.acl = Во время ACL Зарегистрироваться (я извиняюсь за форматированием) – user3779795

+0

им получить ту же ошибку, им новое для быстрой и ios-разработки, где я должен делать аутентификацию acl? – mzonerz