Нужны ли мне отношения один ко многим или многие ко многим? - PullRequest
0 голосов
/ 03 декабря 2018

В качестве своего рода продолжения или продолжения этого вопроса я начинаю задумываться, возможно, я предполагал отношения «многие ко многим» между моими моделями контактов и интересов и хотел бы попробоватьполучить второе мнение по этому вопросу.

Чтобы подвести итог или уточнить, у меня есть:

Контакт

  • Содержит идентификатор и один илидополнительные поля контактной информации пользователя (не важно для вопроса)
  • Включает список из одного или нескольких Интересов, связанных с этим контактом, выбранный из списка объектов интереса из базы данных
  • Можно выбратьлюбое количество интересов, вплоть до всех доступных интересов, но не может выбрать один и тот же интерес более одного раза.

интерес

  • Взято изсписок интересов, определенный базой данных (по возможности, не следует жестко кодировать список опций в Model, View или Controller)
  • Существует в основном для предоставления критериев фильтрации для спискаконтактов (например, «вернуть все контакты, чьи интересы включают (...)»)
  • Каждый интерес может быть связан с / выбран любым количеством контактов, но не обязательно будет требовать ссылки на все связанныеКонтакты в представлении

Требуемые просмотры

  • Создать контакт - Предоставляет пользователю список всех доступных интересов, пользователь должен иметь возможность выбрать один илибольше, чтобы быть связанным с их Контактом
  • Индекс Контакта - Пользовательский интерфейс включает список кнопок / флажков, по одному для каждого возможного Интереса;выбрав один или несколько из них, пользователь / администратор может выбрать, какие контакты будут возвращены в представление, независимо от того, включают ли выбранные им интересы одно или несколько указанных им интересов

Now,Я думаю, что у меня есть достаточно хорошее представление о том, как кодировать логику многих из этих операций;что я не знаю наверняка, так это того, потребует ли это отношения один-ко-многим или многие-ко-многим между объектами Контакт и Интерес.

Я понимаю, что мне понадобится еще один вопрос для специфики правильного моделирования, но сейчас, какое отношение описывают вышеуказанные критерии: Один-ко-многим или Многие-ко-многим?

1 Ответ

0 голосов
/ 03 декабря 2018

Многие-ко-многим будет правильным здесь.Вы сами сказали: «Контакты ...« Можно выбрать любое количество интересов, вплоть до всех доступных интересов », и« Интересы ... »могут быть связаны с любым количеством контактов».Ни одна из сторон отношения не ограничена одной ассоциацией.

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...