Тройные отношения в coreData - PullRequest
0 голосов
/ 30 декабря 2011

Допустим, у меня есть объекты Article, Page и Category.Я хочу, чтобы у Entity Article были такие отношения.В статье (A1) есть категория (C1) для страницы (P1), но я хочу, чтобы в той же статье (A1) была категория (C2) для другой страницы (P2).

Как мне смоделировать этов coreData?Я предполагаю, что, возможно, одно из этих отношений не должно реализовывать свои обратные отношения, но я не уверен в этом.Есть идеи?

1 Ответ

0 голосов
/ 30 декабря 2011

Почему бы сущности page не отследить ее category?

Затем вы можете предоставить метод на article, который перебирает все page и возвращает NSSet из category х.Если бы это часто использовалось, вы могли бы рассмотреть кэширование результата

Обновление

                      +----------+
                      | Category |              
                      +----------+
                            |
                            V
+---------+         +--------------+         +------+
| Article | <---->> | CategoryPage | <<----> | Page |
+---------+         +--------------+         +------+
  • В article может быть много от pages до category_page
  • A page может принадлежать многим * от 1023 * до category_page

Я не думаю, что вы можете просто сделать

+---------+         +------+
| Article | <<--->> | Page |
+---------+         +------+

потому что вам также нужна category информация

...