Та же история, что и у многих других вопросов на этом сайте: я несколько часов подряд стучал головой об стену, пытаясь выяснить эти отношения.
У меня есть 3 модели, где отношения должны работать так:
Модель: Пользователь
Пользователь может принадлежать ко многим школам.
Пользователь принадлежит одной «Роли» отдельно в каждой школе.
Пользователь может быть активирован / деактивирован отдельно в каждой школе.
Модель: Школа .
Школа может принадлежать многим пользователям
Модель: Роль .
Роли будут «Стандарт» или «Администратор».
У меня есть сводная таблица, которая связывает пользователей и школы.
В сводной таблице я также экспериментировал с добавлением столбцов 'role_id' и 'is_activation' - что, я сомневаюсь, является правильным способом сделать это?
Я хочу получить доступ к таким данным:
Пользователь
Получить школы, принадлежащие пользователю.
Получить роль для текущей школы.
Получить активированный / деактивированный статус для текущей школы.
школа
Получить всех пользователей, принадлежащих к школе.
Получить роль для каждого пользователя.
Получить активированный / деактивированный статус для каждого пользователя.
Я бы решил это, если бы пользователи могли принадлежать только к одной школе каждая, но, поскольку один и тот же пользователь может принадлежать к нескольким школам, для меня это было слишком сложно.
Какие отношения я должен применять к каждой модели?
Я был бы очень признателен, если бы кто-нибудь указал мне правильное направление здесь. Спасибо!