Смешивание полиморфных и has_many ассоциаций - PullRequest
0 голосов
/ 09 августа 2011

Две модели: обзор и пользователь.

Обзор имеет три соответствующих поля: user_id, reviewable_type и reviewable_id.Итак, ассоциации выглядят примерно так:

User has_many :reviews
User has_many :reviews, :as => :reviewable

Review belongs_to :user
Review belongs_to :reviewable

Как найти правильный «набор» отзывов из модели User?@user.reviews vs ...?

В общем случае, как нам настроить две модели, чтобы множественные ассоциации между ними оставались раздельными, и чтобы родительская модель могла получить доступ к каждому набору дочерних элементов независимо?

1 Ответ

0 голосов
/ 09 августа 2011

Вы имеете в виду @ user.reviews vs @ user.reviewable?

Я не настолько знаком с рельсами 3.0, но в рельсах 2.x вы могли бы сделать

   User has_many :review_something1, :class_name => "Review", :where => ...
   User has_many :review_something2, :class_name => "Review", :where => ...
...