Полиморфная модель в Rails / ActiveRecord

У меня ActiveRecord немного заржавел, так что простите, если ответ как-то очевиден.

У меня есть три модельных объекта в проекте рельсов: Студент, Задание и Курс. Как вы понимаете, Курс has_many заданий. Теперь я хочу иметь возможность назначать студенту произвольное количество курсов и индивидуальных заданий.

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

Какой самый естественный способ смоделировать эти отношения в рельсах?


person bosmacs    schedule 08.06.2011    source источник


Ответы (1)


Один из способов сделать это - просто сказать, что Студент has_many задания и has_many курсы. Курс также has_many задания. Конечно, я не знаю, чего вы пытаетесь достичь в своем приложении, но кажется, что курсы и задания - это совершенно разные сущности, поэтому я не уверен, почему вам нужна полиморфная ассоциация.

person Alex Korban    schedule 08.06.2011
comment
Хорошее замечание, я полагаю, я слишком сильно задумался над проблемой. Курс и Задание могут иметь общие атрибуты, но то, что Курс состоит из Заданий, не означает, что они имеют полиморфные отношения. - person bosmacs; 09.06.2011