我有一个Book
has_many Reviews
,我已经添加了一个类方法Book
在我的主页上显示'最近审查'的书籍。我已经试过这样:Rails:订购连接表后删除重复项
def self.recently_reviewed
Book.joins(:reviews).order('reviews.created_at DESC').limit(5)
end
将会产生很多重复的记录,所以我尝试使用distinct
像这样:
Book.joins(:reviews).order('reviews.created_at DESC').distinct.limit(5)
我也尝试过,后.order
,这
ActiveRecord::StatementInvalid: PG::InvalidColumnReference: ERROR: for SELECT DISTINCT, ORDER BY expressions must appear in select list
我对如何解决这个问题有点困惑,我应该下降到.select
有更多的灵活性?
如果您的关联设置正确,为什么不直接找到最后一个'n''评论'的'Book.title'? – Andy