Zan*_*rry 2 scope ruby-on-rails kaminari
我在订购已成功使用 Kaminari 分页的数组时遇到问题。
在我的控制器中,我有:
@things = @friend_things + @user_things
@results = Kaminari.paginate_array(@things).page(params[:page]).per(20)
Run Code Online (Sandbox Code Playgroud)
我想要@results由 排序的最终数组:created_at,但没有运气得到排序以使用 Kaminari 提供的通用数组包装器。有没有办法在 Kaminari 包装器中设置顺序?否则最好的方法是什么?谢谢。
您可以在将元素发送到 Kaminary 之前对元素进行排序,如下所示:
@things = @friend_things + @user_things
@things.sort! { |a,b| a.created_at <=> b.created_at }
@results = Kaminari.paginate_array(@things).page(params[:page]).per(20)
Run Code Online (Sandbox Code Playgroud)
或者
@things = @friend_things + @user_things
@things.sort_by! { |thing| thing.created_at }
@results = Kaminari.paginate_array(@things).page(params[:page]).per(20)
Run Code Online (Sandbox Code Playgroud)