rails:过滤类别,其中至少有一篇文章

时间:2010-10-05 08:25:41

标签: sql ruby-on-rails activerecord

我有n:m关系中的文章和类别:

我在类别模型上寻找一个查找声明,以便我可以获得至少包含一篇文章的所有类别。

应该很容易,但我没有找到有效的解决方案,而没有搜索检索所有文章。

谢谢, Maechi

1 个答案:

答案 0 :(得分:1)

我认为反缓存是你的朋友。看看here

您可以将计数器缓存添加到categories表和您喜欢的CategoryArticles中

class CategoryArticles
  belongs_to :article
  belongs_to :category, :counter_cache => true
end

所以你可以找到你的类别

@categories = Category.find(:all, :conditions => ["category_articles_count > ?", 0])