Объединяет несколько таблиц (HABTM, Rails, Ruby) - PullRequest
0 голосов
/ 03 мая 2018

Это концептуальный вопрос, а не вопрос кода.

Я работаю с 4 моделями: Doctor, Specialization, School, Service

Доктор имеет взаимные ассоциации HABTM с другими 3 моделями, и были созданы 3 таблицы соединений для хранения этих ассоциаций:

doctors_specializations
doctors_schools
doctors_services

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

Пример. Верните всех врачей, которые посещали Гарвард, специализируются на подтяжке лица и предлагают некоторые виды сопутствующих вспомогательных услуг.

Каков наилучший способ сделать это?

1 Ответ

0 голосов
/ 03 мая 2018

Лучше иметь только модель Доктора, и у вас может быть 3 флага для каждого случая. И вы можете создать 3 области в модели «Доктор» с 3 имеющимися случаями.

scope :specialized, where(specialized: true) 
...