查询当前用户信息

时间:2015-06-06 21:03:21

标签: ios objective-c parse-platform

这是使用Parse btw。

我在此处使用此代码将信息保存到用户类

-(IBAction)saveButtonAction:(id)sender {

PFUser *currentUserSave = [PFUser currentUser];

userBioString = userBio.text;
genderFieldString = genderField.text;
ageFieldString = ageField.text;

currentUserSave[@"userBioParse"] = userBioString;
currentUserSave[@"userGenderParse"] = genderFieldString;
currentUserSave[@"ageFieldParse"] = ageFieldString;

[[PFUser currentUser] saveInBackground];
[[PFUser currentUser] fetch];

现在我正在尝试使用查询回调信息。我研究了如何做到这一点,这是我现在的结果。

-(IBAction) userProfileQuery {

NSString *bioQueryString = [[PFUser currentUser] objectForKey:@"userBioParse"];
userBio.text = bioQueryString;

NSString *ageQueryString = [[PFUser currentUser] objectForKey:@"ageFieldParse"];
ageField.text = ageQueryString;

NSString *genderQueryString = [[PFUser currentUser] objectForKey:@"genderFieldParse"];
genderField.text = genderQueryString;

信息正在成功保存到用户类中。我只是不确定如何检索它...提前感谢任何反馈!

1 个答案:

答案 0 :(得分:1)

解析时获取currentUsers信息的方法不止一种。试试这个代码吧。它是最复杂的一个,但阅读代码更容易理解你正在做什么。

PFQuery *query= [PFUser query];  
[query whereKey:@"username" equalTo:[[PFUser currentUser]username]];
[query getFirstObjectInBackgroundWithBlock:^(PFObject *object, NSError *error){
    if (!error) {       
        userBio.text = [object valueForKey:@"userBioParse"];
        ageField.text = [object valueForKey:@"ageFieldParse"];
        genderField.text = [object valueForKey:@"genderFieldParse"];
    }
    else {
        // Log details of the failure
        NSLog(@"Error: %@ %@", error, [error userInfo]);
    }
}];

如果你按照自己的方式去做,那就试试吧,这就是一条捷径:

PFUser *user = [[PFUser currentUser];
userBio.text = user.userBioParse;

Parse已经为你提供了currentUser的大部分代码。获取解析提供的currentUser信息的最快方法是:

userBio.text = currentUser.userBioParse;