Как использовать отношения многие ко многим в NSFetchedResultsController?

У меня есть две сущности: группа и контакт. Контакт может принадлежать многим группам, а группа может иметь много контактов. Так что я создаю отношения многие ко многим. как это:

Group           Contact
attribute       attribute
  gname           name
  gid             gender
relationship    relationship
  cnt<<--------->>grp

Я хочу отобразить все контакты в UITableView, который имеет много разделов, каждый раздел имеет много строк. как это:

GroupA
  Contact1
  Contact2
  Contact3
GroupB
  Contact1
  Contact3
GroupC
  Contact2
  Contact3

Мой вопрос, как создать NSFetchedResultsController для достижения этой цели? Я могу использовать атрибут, чтобы разделить UITableView на разделы. Я пытался разделить это, используя простые отношения ко многим, но потерпел неудачу, как для многих ко многим, я...

Если у меня есть группа с именем "GroupD", к которой я не имею отношения, принадлежу. Таким образом, у сущности Contact нет строки, атрибут grp которой содержит "GroupD". Тогда я получил только три раздела. Я хочу, чтобы мой UITableView был таким:

GroupA
  Contact1
  Contact2
  Contact3
GroupB
  Contact1
  Contact3
GroupC
  Contact2
  Contact3
GroupD

но я получил:

GroupA
  Contact1
  Contact2
  Contact3
GroupB
  Contact1
  Contact3
GroupC
  Contact2
  Contact3

Я думаю, что самой большой проблемой является мой способ создания NSFetchedResultsController.

пожалуйста помоги.

Любой ответ будет признателен, спасибо заранее.

1 ответ

Решение

Я думаю, что для UITableView невозможно отобразить раздел без ячеек. Если вы можете принять этот факт, тогда ваш NSFetchResultController должен быть таким, как показано ниже.

NSFetchRequest *fetchRequest = ....
NSEntityDescription *entity = .... @"Contact" ....
fetchRequest.entity = entity;

[NSFetchResultsController alloc] initWithFetchRequest:fetchRequest
                                   ...
                                   sectionNameKeyPath:@"grp"
                                   ...
Другие вопросы по тегам