class Praxis::Extensions::Pagination::SequelPaginationHandler

Public Class Methods

count(query) click to toggle source
# File lib/praxis/extensions/pagination/sequel_pagination_handler.rb, line 32
def self.count(query)
  query.count
end
limit(query, limit) click to toggle source
# File lib/praxis/extensions/pagination/sequel_pagination_handler.rb, line 40
def self.limit(query, limit)
  query.limit(limit)
end
offset(query, offset) click to toggle source
# File lib/praxis/extensions/pagination/sequel_pagination_handler.rb, line 36
def self.offset(query, offset)
  query.offset(offset)
end
order(query, order, _root_resource: nil) click to toggle source
# File lib/praxis/extensions/pagination/sequel_pagination_handler.rb, line 17
def self.order(query, order, _root_resource: nil)
  return query unless order

  order_clause = order.map do |spec_hash|
    direction, name = spec_hash.first
    case direction.to_sym
    when :desc
      Sequel.desc(name.to_sym)
    else
      Sequel.asc(name.to_sym)
    end
  end
  query.order(*order_clause)
end
where_gt(query, attr, value) click to toggle source
# File lib/praxis/extensions/pagination/sequel_pagination_handler.rb, line 13
def self.where_gt(query, attr, value)
  query.where("#{attr} > ?", value)
end
where_lt(query, attr, value) click to toggle source
# File lib/praxis/extensions/pagination/sequel_pagination_handler.rb, line 9
def self.where_lt(query, attr, value)
  query.where("#{attr} < ?", value)
end