Sha256: ae76fc240603acf2eb8bbad4a40958fd797f7d8f7ddb58828aea6da127eac26c

Contents?: true

Size: 578 Bytes

Versions: 7

Compression:

Stored size: 578 Bytes

Contents

module ActiveHouse
  module Limitable
    extend ActiveSupport::Concern

    included do
      private

      def build_limit_query_part
        return if @limit[:limit].nil?
        if @limit[:offset]
          "LIMIT #{@limit[:limit]}, #{@limit[:offset]}"
        else
          "LIMIT #{@limit[:limit]}"
        end
      end
    end

    def initialize(*)
      @limit = { offset: nil, limit: nil }
      super
    end

    def limit(limit_value, offset_value = nil)
      chain_query limit: { offset: offset_value || @limit[:offset], limit: limit_value }
    end
  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
active_house-0.4.0 lib/active_house/limitable.rb
active_house-0.3.2 lib/active_house/limitable.rb
active_house-0.3.1 lib/active_house/limitable.rb
active_house-0.3.0 lib/active_house/limitable.rb
active_house-0.2.2 lib/active_house/limitable.rb
active_house-0.2.1 lib/active_house/limitable.rb
active_house-0.2.0 lib/active_house/limitable.rb