Rails发现所有关联

时间:2010-05-05 11:16:02

标签: ruby-on-rails ruby activerecord associations

我认为这是一个非常简单的问题(着名的遗言)......

我的Category模型has_and_belongs_to_many Events。我想构建一个简单而有效的查询,查找具有1个或多个事件的所有类别。 (使用Rails 3)

我确定我在这里有一个愚蠢的时刻 - 任何帮助表示赞赏:)

1 个答案:

答案 0 :(得分:8)

怎么样:

Category.find :all,
  :conditions => 'id in (select distinct category_id from categories_events)'

您也可以将此作为命名范围添加到Category课程中,以便您可以说Category.with_events,例如

class Category < ActiveRecord::Base
  named_scope :with_events, 
    :conditions => 'id in (select distinct category_id from categories_events)'
end