PFUser查询约束

时间:2014-06-22 20:33:27

标签: parse-platform

这是我目前的查询:

[PFQuery *userQuery = [PFUser query];
[userQuery whereKey:@"phone" containedIn:phones];
[userQuery findObjectsInBackgroundWithBlock:^(NSArray *objects, NSError *error) {

    if (!error) {
        // The find succeeded.

        self.contactsWithApp = objects;




        [self.tableView reloadData];



    } else {
        // Log details of the failure
        NSLog(@"Error: %@ %@", error, [error userInfo]);
    }
}];

我正在根据由电话号码字符串组成的数组搜索用户。关键的电话'在我的User类中包含每个用户的电话号码字符串。为什么这不起作用?

2 个答案:

答案 0 :(得分:0)

请尝试使用此功能。这假设您在Parse中查询的类称为User。

替换你的行:

PFQuery *userQuery = [PFUser query];

有了这个:

PFQuery *userQuery = [PFQuery queryWithClassName:@"_User"];

最终代码:

PFQuery *userQuery = [PFQuery queryWithClassName:@"_User"];
[userQuery whereKey:@"phone" containedIn:phones];
[userQuery findObjectsInBackgroundWithBlock:^(NSArray *objects, NSError *error) {

if (!error) {
    // The find succeeded.

    self.contactsWithApp = objects;

    [self.tableView reloadData];

} else {
    // Log details of the failure
    NSLog(@"Error: %@ %@", error, [error userInfo]);
}
}];

答案 1 :(得分:0)

我很确定这个问题不再适用。但我面临同样的问题,并希望与解决方案分享。最有可能的是你有JSON回复,而你的电话'在手机中 - 是NSNumber类型。要使用containedIn:数组从Parse查询,必须使用NSString类型的对象。