Sha256: 5896af5bcd30b08732df27ab30156b662e026673286f55910dd359897a5736c0
Contents?: true
Size: 735 Bytes
Versions: 10
Compression:
Stored size: 735 Bytes
Contents
module ActiveRecord class Relation alias :original_count :count def count(column_name = nil, options = {}) if !loaded? && (column_name == :all) && (options == {}) associations = klass.reflections.keys.collect(&:to_s) contains_possible_paths = qry_options.any? do |key, value| if value.is_a?(Array) value.any? do |val| val.to_s.scan(/(?:^|[^\.])([a-z_]+)\.[a-z_]+/).flatten.any? do |string| associations.include?(string) end end end end if contains_possible_paths return qry("COUNT(DISTINCT id)")[0][0] end end original_count column_name, options end end end
Version data entries
10 entries across 10 versions & 1 rubygems