【发布时间】:2011-05-06 07:04:54
【问题描述】:
我想要一个模型(事件)与同一个用户模型具有多个多态 HABTM 关联。
它应该像这样工作:
事件 <:base> has_many :admin_users, :through => :event_users, :source => :userable, :source_type => '用户'
has_many :participating_users, :through => :event_users, :source => :userable, :source_type => '用户'
has_many :paid_users, :through => :event_users, :source => :userable, :source_type => '用户'
has_many :done_users, :through => :event_users, :source => :userable, :source_type => 'User'
end
类 EventUser 属于_to :userable, :polymorphic => true
属于_to:事件
结束
用户 has_many :event_users, :as => :userable
has_many :events, :through => :event_users
结束
这几乎行得通!问题是尽管 userable_type 为所有不同的关联获取类型“用户”。有办法解决吗?
【问题讨论】:
标签: ruby-on-rails ruby-on-rails-3 has-and-belongs-to-many polymorphism