我正在尝试查询应用当前用户的PFRelation,以加载显示所有用户朋友的表格视图。每个用户在首次使用该应用程序时都会保存在名为“用户”的类下,并且一旦他们添加了该朋友,该朋友就会添加到该用户的“friendsRelation”列中。我正在使用这个来自link的代码,并且查询中没有返回任何内容。
PFQuery *query = [PFQuery queryWithClassName:@"User"];
[query whereKey:@"friendsRelation" equalTo:[PFUser currentUser]];
[query findObjectsInBackgroundWithBlock:^(NSArray *objects, NSError *error) {
if (error) {
NSLog(@"An error occurred fetching friends");
}
else {
[self.friends addObjectsFromArray:objects];
[self.tableView reloadData];
}
}];
答案 0 :(得分:4)
试试这个:
PFRelation *relation = [[PFUser currentUser] relationForKey:@"friendsRelation"];
PFQuery *query = [relation query];
[query findObjectsInBackgroundWithBlock:^(NSArray *results, NSError *error) {
// results contains all friends of current user
}];
答案 1 :(得分:1)
您不是在查询PFUser
表,因此您无法使用[query whereKey:@"friendsRelation" equalTo:[PFUser currentUser]];
查询User
表,因为friendsRelation
不包含任何PFUser
表对象,但User
个对象。只需获取代表当前用户的User
对象,并使用它来查询关系。
答案 2 :(得分:1)
要查询“用户”表,请不要使用
[PFQuery queryWithClassName:@"User"];
改为使用
[PFUser query];
如果您已经创建了自己的"用户"表格,此时如果您选中了数据浏览器,您将看到两个名为" User"的表格。