在我的iOS应用中,我使用的是Parse.com框架。当应用首次启动或用户未登录时,PFLogInViewController
和PFSignUpViewController
将显示在视图中。当用户创建他/她的帐户时,应用程序将像往常一样自动创建用户,但它也会在用户下创建另一个名为isPrivate
的变量,该变量调用布尔值。我的问题是如何使用PFQuery
获取isPrivate
的{{1}}值?
答案 0 :(得分:6)
在玩了PFObject,PFUser和PFQuery后,我找到了问题的答案。
您必须创建PF查询PFUser类,然后您必须将查询缩小到仅currentUser username
,然后您请求isPrivate
的值。
PFQuery *query= [PFUser query];
[query whereKey:@"username" equalTo:[[PFUser currentUser]username]];
[query getFirstObjectInBackgroundWithBlock:^(PFObject *object, NSError *error){
BOOL isPrivate = [[object objectForKey:@"isPrivate"]boolValue];
}];
答案 1 :(得分:6)
查询可帮助您找到符合条件的许多对象。当您已经知道所需的对象(当前用户)时,这并不适用。您可以使用
决定currentUser是否为私有[PFUser.currentUser[@"isPrivate"] boolValue];
虽然在这种特殊情况下,您实际上不需要保留单独的字段来确定用户是否是匿名用户(自动用户创建的类型)。尝试:
[PFAnonymousUtils isLinkedWithUser:PFUser.currentUser];
这适用于所有身份验证工具(PFFacebookUtils,PFTwitterUtils和PFAnonymousUtils)。 isLinkedWithUser确定这些身份验证系统是否具有特定用户的凭据。