如何通过与has_many的关联来订购记录

时间:2015-12-01 10:41:58

标签: sql ruby-on-rails activerecord kaminari

我有两张桌子,作者和书籍,书籍有出版日期,我想在上一本出版书的日期订购作者,我这样做includes(:books).where(blablabla).order('books.published_date DESC')但它打破了kaminari的分页(8条记录)每页,9显示),我在第一页上得到正确的记录,但在第二页上我从第一页得到前两条记录加上正确的记录。

2 个答案:

答案 0 :(得分:0)

试试这个: -

Author.includes(:books).where(blablabla).order('books.published_date DESC')

更新1: -

@authors = Author.includes(:books).where(blablabla).order('books.published_date DESC')
@authors = @authors.page(params[:page)

希望这可能有用!!

答案 1 :(得分:0)

您可能需要查看Yap。您可以为User.joins(:team).paginate(sort: {team: :asc}) # would sort by team.name 定义别名,并按该别名排序。请参阅example

.includes(:team)

如果您还需要访问它的任何属性以使用预先加载,请使用public interface RetroRespondService { @Multipart @POST("/v1/answers") public Call<ResponseDTO> sendPictures(@Part("file\"; filename=\"image.png")RequestBody image); }