2013-10-30 72 views
-1

也許這不是合適的地方,但我相信很多用戶都熟悉iOS的Parse框架。基本上我有一個查詢的問題,我想要做的就是檢查用戶名是否已經存在(他們在登錄時這樣做),除非我需要這樣做才能建立當前用戶和另一個用戶之間的關係。目前,我的方法是:解析查詢始終爲真

PFQuery *query = [PFUser query]; 
[query whereKey:@"username" equalTo:username.text]; 
[query findObjectsInBackgroundWithBlock:^(NSArray *objects, NSError *error) { 
    if (!error) { 
     NSLog(@"query returned with result"); 

     for (PFObject *object in objects) { 
      NSLog(@"%@", object.objectId); 
     } 
    } 
    else { 
     NSLog(@"Nope"); 
    } 
}]; 

username只是含UITextField以純文本輸入的詞的字符串。但是不管我輸入什麼內容,查詢似乎都會經過並獲得成功的信息。我甚至嘗試迭代for循環中顯示的對象,並且我沒有記錄任何內容。這裏發生了什麼?

EDIT 只是爲了澄清,username被簡單地從一個IBOutlet UITextField *username取自視圖控制器這需要在用戶名從輸入。我已經過測試,以確保它被正確使用。如果我輸入「foo」,我可以記錄username.text,它將是「foo」,但是我沒有註冊用戶名爲「foo」,所以我不明白爲什麼查詢返回時沒有錯誤。

+0

「if語句」在哪裏決定它是否打印出「success」?請分享一切相關的內容和「用戶名」是什麼?它是'UITextView'還是'NSString'? – Popeye

+0

我從「UITextField」中提到了它的純文本。 'if(!error)'是決定它是否成功打印的語句。請重新閱讀這個問題。 –

+0

那麼將UITextField中的文本放入'username'的代碼在哪裏?再次請分享一切。 – Popeye

回答

0

即使沒有找到對象,您也會收到成功的消息。

(嘗試登錄objects.count)

如果是的話,你應該檢查你的鍵值或查詢值的拼寫。

它們區分大小寫。