如何对子表的记录进行排序?解析API

时间:2014-01-20 09:40:10

标签: iphone objective-c parse-platform

我使用Parse作为后端(Parse API:https://parse.com)。我正在寻找排序子表记录的方法。

表结构,

用户

objectId,FirstName,LastName,Age

朋友

objectId,myId,FriendId

FriendId是指向User表的指针。

现在我想检索Friend表的所有记录,其中myId=X和记录应该根据FirstName缩短。

任何帮助将不胜感激

修改 的 在iPhone端排序记录不起作用,因为解析一次只提供1000条记录,但我的表有超过3000条记录。 我只有一种方法,即递归获取所有记录并对它们进行排序。但我正在寻找在服务器端而不是在客户端对记录进行排序的方法。

1 个答案:

答案 0 :(得分:1)

目前,使用Parse的内置查询API无法做到这一点。拉动后你必须对记录进行排序。这是一个例子:

PFQuery * query = [PFQuery queryWithClassName:@"Friend"];
[query includeKey:@"friendId"];

NSArray * friends = [query findObjects];
NSSortDescriptor * descriptor = [[NSSortDescriptor alloc] initWithKey:@"friendId.FirstName" 
                                                            ascending:Yes];

NSArray * sortedFriends = [friends sortedArrayUsingDescriptors:@[descriptor]];
// now sorted by the first name of User

这假设你有正确设置User类的指针