我正在尝试查询以根据特定凭据查找特定用户。
查询只会在 User 类中查找。
首先,我希望查询匹配当前用户的位置
其次,必须匹配特定类别(意味着同一位置的多个用户可能属于同一类别)
这是我尝试过的:
self.profileObj = [self.currentUser objectForKey:@"city"];
PFQuery * queryOne = [PFUser query];
[queryOne whereKey:@"city" equalTo:self.profileObj];
PFQuery * queryTwo = [PFUser query];
[queryTwo whereKey:@"category" equalTo:self.tagString];
PFQuery * query = [PFQuery orQueryWithSubqueries:@[queryOne, queryTwo]];
[query orderByAscending:@"createdAt"];
[query findObjectsInBackgroundWithBlock:(NSArrayobjects, NSError error)
这将返回 0 个结果。
最佳答案
您不需要两个单独的查询,因为您查询的是同一个用户对象。另外,我相信您想要两个 AND 约束而不是 OR?如果是这样,您可以将两个 whereKey 链接在一起:
PFQuery * query = [PFQuery queryWithClassName:@"User"];
[query whereKey:@"city" equalTo:self.profileObj];
[query whereKey:@"category" equalTo:self.tagString];
[query orderByAscending:@"createdAt"];
[query findObjectsInBackgroundWithBlock:^(NSArray *objects, NSError *error) {
...
}];
关于ios - 使用 Parse.com 进行多查询搜索,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21964373/