iphone – 核心数据:按照一对多的关系排序

iphone – 核心数据:按照一对多的关系排序,第1张

概述我正在尝试设置一个NSFetchedResultsController,它将根据多对象关系中的实体数量对我的表视图进行排序.我不知道这是否在计数时有所作为,但这也是一个反向关系. 我以为这样的事情会很好的工作: NSEntityDescription *entity = [NSEntityDescription entityForName:@"Parent"inManagedObjectCont 我正在尝试设置一个NSFetchedResultsController,它将根据多对象关系中的实体数量对我的表视图进行排序.我不知道这是否在计数时有所作为,但这也是一个反向关系.

我以为这样的事情会很好的工作:

NSEntityDescription *entity = [NSEntityDescription entityForname:@"Parent"inManagedobjectContext:managedobjectContext];NSSortDescriptor *sortDescriptor1 = [[NSSortDescriptor alloc] initWithKey:@"children.@count" ascending:YES];NSArray *sortDescriptors = [[NSArray alloc] initWithObjects:sortDescriptor1,nil];[fetchRequest setSortDescriptors:sortDescriptors];

我不断得到“包含KVC聚合物的Keypath,不应该有一个;未能处理孩子@ count’.

有什么想法可能会出错?

解决方法 据我所知,您无法在查询中应用@count,但您可以轻松地将其应用于获取的数组.

NSEntityDescription * entity = [NSEntityDescription entityForname:@"Parent" inManagedobjectContext:self.managedobjectContext];NSFetchRequest *request = [[NSFetchRequest alloc] init];[request setEntity:entity];NSError *error;NSArray *results = [self.managedobjectContext executeFetchRequest:request error:&error];NSSortDescriptor *sortDescriptor = [[NSSortDescriptor alloc] initWithKey:@"children.@count" ascending:NO];NSArray *descriptors = [[NSArray alloc] initWithObjects:sortDescriptor,nil];NSArray *sortedArray  = [results sortedArrayUsingDescriptors:descriptors];
总结

以上是内存溢出为你收集整理的iphone – 核心数据:按照一对多的关系排序全部内容,希望文章能够帮你解决iphone – 核心数据:按照一对多的关系排序所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1019279.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-23
下一篇 2022-05-23

发表评论

登录后才能评论

评论列表(0条)

保存