【发布时间】:2010-02-26 19:22:38
【问题描述】:
我有四个模型类:
class Group < ActiveRecord::Base
has_many :projects
has_many :personal_blogs
end
class Project < ActiveRecord::Base
has_many :events, :as => :event_producer
end
class PersonalBlog < ActiveRecord::Base
has_many :events, :as => :event_producer
end
class Event < ActiveRecord::Base
belongs_to :event_producer, :polymorphic => true
end
我想查找特定组的所有事件。我认为这是一个 has_many :through 关联,但是如何在 Group 上指定一个 has_many 以查找组的项目 或 personal_blogs 中的所有事件?当然,我可以指定两个关联并连接结果,但随后我必须在 Ruby 中重新排序、限制、条件等,这可能是许多事件的性能噩梦。我想在 ActiveRecord 中这样做以避免这样的噩梦。
【问题讨论】:
标签: ruby-on-rails activerecord