Sha256: 3935fceee4ce8f14dfca218f039fac7716108ac021f5ce81fe62a50d63903448
Contents?: true
Size: 1.01 KB
Versions: 2
Compression:
Stored size: 1.01 KB
Contents
module Kaminari module ActiveRecordRelationMethods extend ActiveSupport::Concern module InstanceMethods # a workaround for AR 3.0.x that returns 0 for #count when page > 1 # if +limit_value+ is specified, load all the records and count them if ActiveRecord::VERSION::STRING < '3.1' def count #:nodoc: limit_value ? length : super end end def total_count #:nodoc: # #count overrides the #select which could include generated columns referenced in #order, so skip #order here, where it's irrelevant to the result anyway c = except(:offset, :limit, :order) # a workaround for 3.1.beta1 bug. see: https://github.com/rails/rails/issues/406 c = c.reorder nil # Remove includes only if they are irrelevant c = c.except(:includes) unless references_eager_loaded_tables? # .group returns an OrderdHash that responds to #count c = c.count c.respond_to?(:count) ? c.count : c end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
wulffeld_kaminari-0.12.4.2 | lib/kaminari/models/active_record_relation_methods.rb |
wulffeld_kaminari-0.12.4.1 | lib/kaminari/models/active_record_relation_methods.rb |