module ActiveRecord::CountLoader::Builder::HasManyExtension

Public Instance Methods

build(model) click to toggle source
Calls superclass method
# File lib/active_record/count_loader/has_many_extension.rb, line 9
def build(model)
  define_count_loader(model) if options[:count_loader]
  super
end
define_count_loader(model) click to toggle source
# File lib/active_record/count_loader/has_many_extension.rb, line 14
def define_count_loader(model)
  name_with_count = :"#{name}_count"
  name_with_count = options[:count_loader] if options[:count_loader].is_a?(Symbol)

  valid_options = options.slice(*Associations::Builder::CountLoader.valid_options)
  reflection = Associations::Builder::CountLoader.build(model, name_with_count, nil, valid_options)
  Reflection.add_reflection(model, name_with_count, reflection)
end
valid_options() click to toggle source
Calls superclass method
# File lib/active_record/count_loader/has_many_extension.rb, line 5
def valid_options
  super + [:count_loader]
end