2014-01-20 42 views
1

我已经使用Parse作为后端(解析API:https://parse.com)。我正在寻找排序子表记录的方法。如何对子表的记录进行排序?解析API

表结构,

用户

的ObjectID,名字,姓氏,年龄

朋友

的ObjectID,MYID,FriendId

FriendId是一个指针,指向用户表。

现在我想检索所有记录的朋友表,其中myId=X和记录应根据名字缩短。

任何帮助,将不胜感激

编辑:在iPhone端 排序记录将无法工作,因为解析一次只提供1000个记录,但我的表中有超过3000条记录。 我只有一种方法,那就是递归获取所有记录并对它们进行排序。但我正在寻找在服务器端而不是客户端对记录进行排序的方式。

回答

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 

这里假设你有指针设置正确

+0

User类,我知道这种方法看到我的编辑,但遗憾的是我错过了在问题澄清像我期待的一种在服务器端对记录进行排序的方法。 +1为你的努力 – Iducool

+0

哦,我明白了,是的,不幸的是他们目前不支持。我遇到了同样的问题。为什么你需要对服务器端进行排序? –

+0

我想在我的应用程序中保持分页,其中一个原因是保持低内存占用 – Iducool

相关问题