2015-06-05 4 views
0

Как вы можете видеть на скриншоте ниже, у меня есть три пользователя с именами пользователей user1, user2 и user3 в таблице User. Я пытаюсь использовать код ниже, чтобы получить (чтобы я мог обновить позже) объект User с именем пользователя = «user1». Я ничего не получаю, я просто ошибаюсь.Невозможно получить текущий объект PFUserUuser от Parse.com

enter image description here

Когда функция ниже запускается, это напечатано:

saveUserSalaryInfo() - найдено НООО-NIL соответствие пользователем критериев pfquery

Это показывает, что всегда получение ошибки. Зачем? Что я делаю не так?

Код:

func saveUserSalaryInfo() { 

    if PFUser.currentUser() != nil { 
     var query = PFQuery(className:"User") 
     query.whereKey("username", equalTo: "user1") 
     query.findObjectsInBackgroundWithBlock { 
      (users: [AnyObject]?, error: NSError?) -> Void in 
      if error != nil { 

       NSLog("saveUserSalaryInfo() - found some user matching pfquery criteria") 

      } 

      else { 
       NSLog("saveUserSalaryInfo() - found NOOO-NIL user matching pfquery criteria") 
      } 
     } 

    } else { 
     NSLog("found error - current User is not logged in") 
    } 

} 

ответ

0

Вы делаете тест наоборот, если ошибка равна нулю, что означает, что никакой ошибки не произошло

if error == nil { 
    NSLog("No error") 
} else { 
    NSLog("Error") 
} 

Или, чтобы проверить, есть ли использование данных:

if users != nil { 
    NSLog("Find Users") 
} else { 
    NSLog("Didn't find users") 
}