我有以下模型
邮政:
has_many :comments
评论:
belongs_to :post
和一个控制器pages
,其中包含以下代码。
def home
@posts = Post.includes(:comments)
respond_to do |format|
format.html
end
end
所以说如果我有 3 个帖子 P1、P2、P3;home
最初在页面上以相同的顺序呈现。稍后,如果 P2 被评论并且我刷新页面,则顺序应该是 P2、P1、P3。因此,每当帖子被评论时,它都应该出现在顶部。所有的帖子都应该按照他们被评论的时间降序排列。我怎样才能做到这一点?
我的尝试-我尝试的效率非常低,绝对不是一个好习惯。我从评论中按降序获得唯一的 post_ids,并使用 post_ids 获取帖子。
我确信 rails 提供了最好的方法。帮助高度赞赏。谢谢。