我尝试查询以根据特定凭据查找特定用户。
查询只会在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结果。
答案 0 :(得分:3)
由于您要查询同一个User对象,因此您不需要两个单独的查询。另外,我相信你想要两个AND约束而不是OR?如果是这样,你可以将两个whereKeys链接在一起:
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) {
...
}];