2015-05-13 1 views
-1

Я хочу получить данные из моего класса синтаксического анализа. Я хочу сохранить их в строках. Вот мой код:Возвращаясь к нулю при получении данных с parse.com

 var query = PFQuery(className:"Tags") 
     query.getObjectInBackgroundWithId("IsRTwW1dHY") { 
      (gameScore2: PFObject?, error: NSError?) -> Void in 
      if error == nil && gameScore2 != nil { 

       let username = self.gameScore2["username"] as? String 
       let tagtext = self.gameScore2["tagtext"] as? String 

       println(username) 
       println(tagtext) 

       println(gameScore2) 

      } else { 

       println(error) 

      } 
    } 

Моя проблема теперь, что строка «имя пользователя» и «tagtext» равны нулю, но запись не является пустым, потому что в разделе println(gameScore2) я получаю вещи обратно. Моя консоль выглядит следующим образом после этой части кода:

enter image description here

Как я могу получить данные из parse.com в моих строках?

+0

Возможный дубликат [Ошибка при получении данных с parse.com] (http://stackoverflow.com/questions/30198787/error-while-retrieving-data-from-parse-com) – picciano

+0

также этот не является дублировать! –

ответ

3

Похоже, у вас есть 2 переменные «gameScore2», переменная экземпляра, к которой вы обращаетесь через self.gameScore2, и параметр gameScore2, который является параметром вашего блока завершения. (закрытие закрытия, чтобы использовать термин Swift.)

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

Переименуйте параметр блока примерно как tagsResult и измените ВСЕ Код в своем блоке, чтобы использовать это новое имя вместо self.gameScore2.

+0

Да, была проблема с этими именами, теперь она работает с именем tagResult для всего кода в этом блоке. –

+1

Никогда, никогда не используйте одно и то же имя переменной как на внешнем уровне области видимости, так и на внутреннем уровне области видимости. Это верный способ создания ошибок, которые сбивают вас с ума. (этот путь приводит к безумию!) –

+0

Да, мне было непонятно, что есть два одинаковых имени переменных. –