Базовые объекты обхода данных с набором содержимого NSArrayController? - PullRequest
1 голос
/ 02 ноября 2011

У меня есть три объекта в приложении Core Data:

Projeto <- >> Servico <- >> Sessao (отношения называются как обычно).

Projeto.servico (для многих Projeto -> Servico)

Servico.projeto (обратный к одному Servico -> Projeto)

Servico.sessaoDoServico (для многих Servico -> Sessao)

Sessao.servicoDaSessao (обратный к одному Sessao -> Servico)

Каждый объект подключен к контроллеру массива, например, «Отдел и сотрудники» в Apple Docs. Работает нормально в типичной конфигурации Master - details.

Теперь я хочу получить все сессии из выбранного проекта. (У меня нет отношений между Сессао и Проекто)

Я пытаюсь связать набор содержимого SessionArrayController для фильтрации сессий без успеха.

Как я могу иметь все сессии для выбранного проекта?

Я создал свойство для класса сеанса, возвращая NSSet, и я могу напечатать нужные сеансы, но я понятия не имею, как я мог бы сделать это с привязкой.

-(NSSet *)sessoesDoProjeto{
NSSet *allSessions = [self.projeto.servico valueForKey:@"sessaoDoServico"];
NSLog(@"allSessions %@",allSessions);
return allSessions;
}

Могу ли я создать NSArrayController с указанным выше NSSet?

Любая помощь будет оценена

1 Ответ

0 голосов
/ 04 ноября 2011

Я нашел решение, поэтому я отправляю сообщения другим пользователям с такой же проблемой.

Я связал массив содержимого (не набор содержимого) SessionArrayController со значением:

ServicoArrayController_by_Project.arrangedObjects.@unionOfSets.sessaoDoServico

Это работает как шарм!

...