Моделирование класса ассоциации в Rails - пример регистрации студента
Я пытаюсь смоделировать классический пример модели ассоциации и связать объекты. Изображение ниже представляет диаграмму классов, показывающую классы ассоциации, и диаграмму объектов, показывающую объекты ссылок.
На изображении показана часть объектной схемы, представляющей ученицу Мэри Джонс и курсы, на которые она зарегистрировалась в семестре осенью 2010 года: MKT350 и MIS385. Соответствующие классу ассоциации на диаграмме классов, объекты ссылок присутствуют на диаграмме объектов. В этом примере есть два объекта ссылки (показаны как: Регистрация) для класса Ассоциации регистрации, фиксирующие две регистрации курса.
Регистрация - Класс Ассоциации: Регистрация - ссылка на объекты
У меня вопрос, как бы я смоделировать что-то подобное в Rails /ActiveRecord
1 ответ
Пожалуйста, ознакомьтесь с Руководством по активным ассоциациям записи для основ ассоциации, особенно has_many :through
а также has_and_belongs_to_many
разделы.
has_and_belongs_to_many
подходит только для вас, вам не нужна другая информация, кроме ассоциации "многие ко многим". Вам не нужно создавать класс модели для таблицы соединений. Если вы не уверены, используйте has_many :through
вместо.
В вашем случае вы можете использовать has_many :through
ассоциация. В классе "Регистрация" вы можете использовать проверку Active Record для проверки соответствия требованиям.