Rails 5查询从我正在查看的post以外的相同类别中提取post

我正在尝试在post详情页面上显示来自同一类别的3个其他post。 所以我有这个问题:

def show @posts_from_same_category = Post.where(category_id: @post.category_id).limit(3).order("RANDOM()") end 

所以页面结构如下:

  • post标题
  • post文字
  • (标题)来自同一类别的更多post
  • 其他职位名称1
  • 其他职位名称2
  • 其他职位名称3

它返回所有post,包括我正在查看的post。 我如何编写查询来拉除我当前正在查看的post以外的post?

谢谢

您可以添加另一个条件来排除当前post:

 @other_posts = @post.category.posts.where.not(id: @post.id).limit(3).order('RANDOM()')