2015-05-07 2 views
2

As you can see the picture, this is the User class that allow user to login in my ios applicationПолучить текущие данные пользователя пользовательских столбцов в Swift Parse

Как я Войти с помощью этого пользователя к моему собственному приложению, после того, как я войти в систему, как я могу получить данные пользовательских столбцов этого пользователя? Например, я хочу получить IntakeCode от этого пользователя и показать его в текстовом поле, как мне это сделать?

Я попробовать этот код, но он не работает, он говорит, что

«AnyObject» не конвертируются в «строка»; вы хотели использовать «как!» чтобы заставить downcast?

var displayIntake:NSString = PFUser.currentUser()!.objectForKey("IntakeCode") 
txtIntake.text = displayIntake as String 

Надежда, что кто-то может помочь с этим, я просто хочу, чтобы IntakeCode от этого пользователя все в текстовом поле.

ответ

6

Вы можете получить любой пользовательский столбец, используя yourpfobject["yourcolumn"] ..

В вашем случае:

if let displayIntake = PFUser.currentUser()!["IntakeCode"] as? String { 
    txtIntake.text = displayIntake 
} 
+0

Да, это решило мою проблему, всегда есть объект, бросающий вызов String, но в итоге я решил попробовать ваш код, и он сработал! Большое спасибо. – jefferyleo

+0

Это действительно работает. Спасибо – zumzum

+0

Он не работает, чтобы получить целые значения! Я изменил 'как? Строка 'to' as? Int ', но не работал для меня! – Bernard

0

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

var query = PFUser.query 
var currentUser = PFUser.currentUser() 
query.whereKey("username", equalTo: currentUser.username) 
query.getFirstObjectInBackgroundWithBlock { 
    (object: PFObject?, error: NSError?) -> Void in 
    if error != nil || object == nil { 
    println("The getFirstObject request failed.") 
    } else { 
    // The find succeeded. 
      self.intakeCode = object["IntakeCode"] as! String! 

    println("Successfully retrieved the object.") 
    } 
} 

Этот запрос хорошо проверит текущее имя пользователя пользователей с базой данных, а затем вернет все, что вы вызываете в фоновом методе.

+0

Я постараюсь это, как только я добраться домой и сказать, работает ли он или нет :) спасибо – jefferyleo

+0

Я вы пробовали этот код, он показывает ошибку ** Невозможно вызвать 'getFirstObjectInBackgroundWithBlock' с помощью списка аргументов типа '((PFObject !, NSError!) -> Void)' ** – jefferyleo

+0

Я думаю, что перед тем, как пометить вопрос, вы должны добавить больше подумал в этом, если бы это было не то, значит, я не уверен, кто сочтет нужным это в настоящее время, как я обращаюсь к своим полям в текущего пользователя. В настоящее время я запускаю быстрый 1.1 с parse 1.7.1, и это работает отлично. С текущим быстрым обновлением 1.2 вы можете изменить! к? например, PFObject? и NSError? – TomTom

Смежные вопросы