例如,Post
has_many Comments
。
如何找到所有没有评论的帖子?
答案 0 :(得分:3)
为了获得更好的性能,请使用counter_cache列:
belongs_to :post, :counter_cache => true
api.rubyonrails.org, Railscasts
然后你可以这样做:
Post.where("comments_count = ?", 0)
答案 1 :(得分:2)
您可以使用不存在的内容:
Post.where(" not exists (select 'x' from comments where comments.post_id = posts.id)")