尝试按关联字段对条目进行排序,遗憾的是,在使用Will Paginate进行分页时,排序是错误的。
@categories = Category.includes(:posts)
.page(params[:page])
.order("posts.post_at DESC")
我尝试了很多变化,但不幸的是,paginate似乎并不尊重类别的排序顺序。没有分页,类别就会正确排序。
我怎样才能让Will Paginate尊重订单?
最终目标是按posts.post_at排序的类别,并在保持该顺序的同时进行分页。
感谢。
答案 0 :(得分:0)
尝试
@categories = Category.includes(:posts).order("posts.post_at DESC").paginate(:page => params[:page], :per_page => 10)
答案 1 :(得分:0)
很抱歉由于低代表而无法发表评论,但你想要排序的是什么以及你想要列出什么?
如果您希望按特定顺序排列相关帖子的类别,那么按字母顺序排列吗?
@categories = Category.includes(:posts).order('categories.name??').page(params[:page])
最新帖子的类别?
@categories = Category.includes(:posts).order("posts.post_at DESC").page(params[:page])
或者您是否想要列出与其一起列出的类别的最新帖子?
@posts = Post.includes(:category).order('posts.post_at DESC').page(params[:page])
目前还不清楚您的最终目标是什么。