0

我有一个Post模型has_many :comments。问题是:如何使用ActiveRecord 查询接口构建查询,以检索所有帖子和每个帖子的最后评论

我现在只有以下内容,但它不会过滤评论,我不知道下一步该做什么:

Post.includes(:comments)
4

1 回答 1

2

好吧,最简单的事情浮现在脑海中,这可能不是最好的,那就是创建一个范围。

class Post < ActiveRecord::Base
    # has_many or maybe a has_one ? I don't have time to fire up console again to check, sorry!
    has_many :last_comment, :class_name => 'Comment', :limit => 1, :order => 'comments.created_at DESC'
end

然后使用

Post.includes(:last_comment)

确保您的 SQL 中有索引。

于 2012-07-16T19:17:59.857 回答