Хорошо, таким образом, у меня есть два объекта в моей модели данных (скажем, entityA и entityB), оба из этих объектов имеют к - многие отношения друг к другу.
Я имею, устанавливают NSFetchedResultsController для выборки набора entityA. Теперь я пытаюсь иметь названия раздела tableview быть заголовком entityB.
sectionNameKeyPath:@"entityB.title"
Теперь это вызывает проблему, где именем раздела, возвращенным из тех отношений, кажется, ({title1}) или ({title1, title2... titleN}), очевидно, в зависимости от того, сколько другого entityB's включены. Это не выглядит большим в tableview и не группирует объекты, как я хотел бы.
То, что я хотел бы, является разделом на entityB заголовок с entityA, появляющимся под каждым разделом под несколькими разделами при необходимости. Я в замешательстве как, как я, как предполагается, достигаю этого, должен ли я обновить предикат, чтобы заставить объект появляться многократно или должен ли я обновить раздел и функции заголовка, чтобы сделать некоторую обработку как циклы контроллера через объекты.
Любая справка ценится :)
Спасибо
Вы получите это, потому что вызов @ "entityB.title" возвращает массив | набор заголовков. Это то, что вы видите, поскольку это переводится в:
NSSet *titles = [myEntityA valueForKeyPath@"entityB.title"];
Чтобы исправить это, вам нужно отменить ваш NSFetchedResultsController, чтобы вы получали объекты EntityA через объекты EntityB. Тогда ваш sectionKeyPath (и ваша основная сортировка) будет противоречить только @ "title".