Как мне установить эти полиморфные ассоциации моделей? - PullRequest
0 голосов
/ 23 апреля 2011

Я хочу иметь полиморфные отношения, чтобы в профилях можно было публиковать множество видео, тегов и пользователей.Профили, видео, теги и пользователи - это отдельные ресурсы.Нужна ли мне отдельная модель для этого и объединить что-то вроде has_many через ассоциацию с полиморфизмом?Я хочу, чтобы в профилях было много видео, тегов и пользователей, а также в видео, тегах и пользователях много профилей.

Ответы [ 3 ]

1 голос
/ 23 апреля 2011

Зачем использовать полиморфизм, когда has_and_belongs_to_many кажется идеальным совпадением?

0 голосов
/ 24 апреля 2011

Вам не нужны полиморфные ассоциации для этого. Вместо этого вам нужны has_many и has_many через ассоциации.

В профилях много видео, а в видео много профилей (на простом английском):

Profile has many videos through profile_videos
Video has many profiles through profile_videos

ProfileVideo belongs to profile
ProfileVideo belongs to video

Используя это, вы теперь можете сделать либо profile.videos, чтобы получить видео профиля, либо video.profiles, чтобы получить профили видео.

0 голосов
/ 24 апреля 2011

Я думаю, что это помощь для вас. http://railscasts.com/episodes/154-polymorphic-association

...