1

有两种模型 Post 和 Comment。我应该得到所有没有带有特定标签的评论的帖子。我怎样才能使用新的 Rails 3 特性来做到这一点,比如关系代数(arel)。

SQL 解决方案应该是这样的:

SELECT     `posts`.* FROM       `posts` LEFT OUTER JOIN `comments` ON `posts`.`id` = `comments`.`post_id`
WHERE    NOT (`comments`.`tag` = 'my_tag')
4

1 回答 1

1

添加到您的 Gemfile:

gem 'meta_where'

接着:

Post.includes(:comment).where(:comments => {:tag.not_eq => 'my_tag'})
于 2010-07-10T03:05:15.290 回答