Я пытаюсь сортировать по возрастанию запрос моей выборки, используя «groupID», который имеет строку типа, но внутри него сохраняется номер в форме счетчика, проблема в том, что возвращаемый массив не «правильно», а не так, как мне захочется, потому что он возвращает элементы, отсортированные как: 0, 1, 10, 2, 3, 4, 5, 6, 7, 8, 9 вместо ожидаемых 0, 1, 2, 3 ... 9, 10Сортировка основного запроса данных по возрастанию
мне удалось найти два решения: 1 - изменить атрибут ядра данных из строки в целом (самый нежелательный сценарий) или 2 - сделать выборку для всех элементов из основных данных, извлекать все из них в массиве, использовать размер массива для запуска цикла for, а внутри цикла for сделать еще одну выборку с pr edicate используя для счетчика цикла, а возвращаемый объект можно сохранить в массиве, поэтому, делая все это я получить отсортированный массив с объектами
А вот мой текущий код:
NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] init];
NSEntityDescription *entity = [NSEntityDescription entityForName:@"SuggestedChannelsEntity" inManagedObjectContext:context];
[fetchRequest setEntity:entity];
NSSortDescriptor *sort = [[NSSortDescriptor alloc] initWithKey:@"groupID" ascending:YES];
NSArray *sortDescription = [[NSArray alloc] initWithObjects:sort, nil];
[fetchRequest setSortDescriptors:sortDescription];
NSError *error = nil;
NSArray *fetchedObjects = [context executeFetchRequest:fetchRequest error:&error];
Благодарим вас за ответ, можете ли вы также предоставить ссылку на документацию? Это будет очень полезно :) –
Хорошая статья: http://nshipster.com/nssortdescriptor/ – andrewbuilder
Документация Apple: https://developer.apple.com/library/mac/documentation/Cocoa/Conceptual/SortDescriptors/Articles/Creating .html – andrewbuilder