我刚刚开始使用MagicalRecord library来更轻松地使用CoreData。我正在使用FRC,无法弄清楚如何使用自定义sortDescriptor设置它,例如
NSSortDescriptor *sortDescriptor = [[NSSortDescriptor alloc]
initWithKey:@"someAttribute"
ascending:YES
selector:@selector(localizedCaseInsensitiveCompare:)];
目前我的检索FRC的呼吁是这样的:
_fetchedResultsController = [Language MR_fetchAllSortedBy:@"someAttribute"
ascending:YES
withPredicate:nil
groupBy:nil
delegate:self];
似乎我正在寻找的是一种“简单地”向MR_fetchAllSortedBy添加自定义选择器的方法。类似的东西:
_fetchedResultsController =
[Language MR_fetchAllSortedBy:@"someAttribute"
ascending:YES
selector:@selector(localizedCaseInsensitiveCompare:)
withPredicate:nil
groupBy:nil
delegate:self];
有人能给我一些关于如何实现这一目标的指示吗?使用类别可能吗?
提前致谢,
乔丝。
答案 0 :(得分:0)
今天我遇到了同样的问题。您不能通过MR_FindAll方法设置自定义排序描述符,但您可以创建自己的提取请求,同时仍然利用Magical Records样板代码:
NSFetchRequest *fetchRequest = [Sites MR_createFetchRequest];
fetchRequest.sortDescriptors = @[[[NSSortDescriptor alloc] initWithKey:@"title" ascending:YES selector:@selector(localizedCaseInsensitiveCompare:)]];
self.sitesArray = [NSManagedObject MR_executeFetchRequest:fetchRequest];