Sha256: 2a911213f4fcdf1e5a0cbbc6386e9820d02c5dba6036c6c3125d5a13c44df6cf
Contents?: true
Size: 871 Bytes
Versions: 1
Compression:
Stored size: 871 Bytes
Contents
module Mongoid module Pagination extend ActiveSupport::Concern module ClassMethods # Paginate the results # # @param [Hash] opts # @option [Integer] :page (default: 1) # @option [Integer] :limit (default: 25) # # @return [Mongoid::Criteria] def paginate(opts = {}) return criteria if opts[:limit].nil? and opts[:page].nil? limit = (opts[:limit] || 25).to_i page = (opts[:page] || 1).to_i if page > 1 offset = (page - 1) * limit else offset = 0 end per_page(limit).offset(offset) end # Limit the result set # # @param [Integer] page_limit the max number of results to return # @return [Mongoid::Criteria] def per_page(page_limit = 25) limit(page_limit.to_i) end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
mongoid-pagination-0.1.0 | lib/mongoid/pagination.rb |