Моделирование класса ассоциации в Rails - пример регистрации студента - PullRequest
0 голосов
/ 01 декабря 2011

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

Association class and link objects

На рисунке показана часть объектной схемы, представляющая ученицу Мэри Джонс и курсы, которые она зарегистрировала в семестре осенью 2010 года: MKT350 и MIS385.Соответствующие классу ассоциации на диаграмме классов, объекты ссылок присутствуют на диаграмме объектов.В этом примере есть два объекта ссылки (показаны как: Регистрация) для класса Ассоциации регистрации, фиксирующие две регистрации курса.

Регистрация - это класс ассоциации: Регистрация - это объекты ссылки

Мой вопрос: как мне смоделировать что-то подобное в Rails / ActiveRecord

1 Ответ

1 голос
/ 01 декабря 2011

Пожалуйста, прочитайте Руководство по активным ассоциациям записей для основ ассоциаций, особенно для секций has_many :through и has_and_belongs_to_many.

has_and_belongs_to_many подходит только для тех, кому не нужнодругая информация, кроме ассоциации «многие ко многим».Вам не нужно создавать класс модели для таблицы соединений.Если вы не уверены, вместо этого используйте has_many :through.

В вашем случае вы можете использовать has_many :through ассоциацию.В классе «Регистрация» вы можете использовать ActiveRecord validation для проверки соответствия требованиям.

...