Sha256: 6af939c66df02beb7176b2e1af11a054a0e9c4f6337efd31f38169b7fb22405f
Contents?: true
Size: 645 Bytes
Versions: 231
Compression:
Stored size: 645 Bytes
Contents
module Comee module Core module Pagination extend ActiveSupport::Concern def default_per_page 25 end def page_no params[:page]&.to_i || 1 end def per_page params[:per_page]&.to_i || default_per_page end def paginate_offset (page_no - 1) * per_page end def order_by params.fetch(:order_by, :id) end def order_direction params.fetch(:order_direction, :asc) end def paginate ->(it) { it.limit(per_page).offset(paginate_offset).order("#{order_by}": order_direction) } end end end end
Version data entries
231 entries across 231 versions & 1 rubygems