admin

Rails 5 Query从同一个类别中拉出除我当前正在查看的帖子以外的其他帖子

sql

我正在尝试在帖子详细信息页面上显示同一类别的其他3个帖子。所以我有这个查询:

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

所以页面结构是这样的:

  • 帖子标题
  • 帖子文字
  • (标题)同一类别的更多帖子
  • 其他职务1
  • 其他职务2
  • 其他职务3

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

谢谢


阅读 180

收藏
2021-07-01

共1个答案

admin

您可以添加其他条件以排除当前帖子:

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