Module: EacRailsUtils::Models::TablelessAssociations::Hooks

Defined in:
lib/eac_rails_utils/patches/active_model_associations.rb,
lib/eac_rails_utils/models/tableless_associations/hooks.rb

Class Method Summary collapse

Class Method Details

.initObject



12
13
14
15
# File 'lib/eac_rails_utils/patches/active_model_associations.rb', line 12

def init
  init_rails_4 if ::EacRailsUtils::Patches::Rails4.enabled?
  init_rails_5_2 if ::EacRailsUtils::Patches::Rails52.enabled?
end

.init_rails_4Object

rubocop:disable Naming/VariableNumber



17
18
19
20
21
22
23
# File 'lib/eac_rails_utils/patches/active_model_associations.rb', line 17

def init_rails_4 # rubocop:disable Naming/VariableNumber
  ActiveSupport.on_load(:active_record) do
    ActiveRecord::Associations::AssociationScope.prepend(
      ::EacRailsUtils::Patches::Rails4::ActiveRecordAssociationsAssociationScope
    )
  end
end

.init_rails_5_2Object

rubocop:disable Naming/VariableNumber



25
26
27
# File 'lib/eac_rails_utils/patches/active_model_associations.rb', line 25

def init_rails_5_2 # rubocop:disable Naming/VariableNumber
  rails_5_2_fix_activemodel_associations_methods
end

.rails_5_2_fix_activemodel_associations_methodsObject



29
30
31
32
33
# File 'lib/eac_rails_utils/patches/active_model_associations.rb', line 29

def rails_5_2_fix_activemodel_associations_methods
  %i[belongs_to has_many].each do |method|
    ::EacRailsUtils::Patches::Rails52::ActiveModelAssociationMethodFix.new(method)
  end
end