diff --git a/activemodel/lib/active_model/validations/comparison.rb b/activemodel/lib/active_model/validations/comparison.rb index 80da718758..1204d19884 100644 --- a/activemodel/lib/active_model/validations/comparison.rb +++ b/activemodel/lib/active_model/validations/comparison.rb @@ -22,7 +22,7 @@ module ActiveModel return record.errors.add(attr_name, :blank, **error_options(value, option_value)) end - unless value.send(COMPARE_CHECKS[option], option_value) + unless value.public_send(COMPARE_CHECKS[option], option_value) record.errors.add(attr_name, option, **error_options(value, option_value)) end rescue ArgumentError => e diff --git a/activemodel/lib/active_model/validations/numericality.rb b/activemodel/lib/active_model/validations/numericality.rb index 14bb4be571..b3da205507 100644 --- a/activemodel/lib/active_model/validations/numericality.rb +++ b/activemodel/lib/active_model/validations/numericality.rb @@ -46,16 +46,16 @@ module ActiveModel options.slice(*RESERVED_OPTIONS).each do |option, option_value| if NUMBER_CHECKS.include?(option) - unless value.to_i.send(NUMBER_CHECKS[option]) + unless value.to_i.public_send(NUMBER_CHECKS[option]) record.errors.add(attr_name, option, **filtered_options(value)) end elsif RANGE_CHECKS.include?(option) - unless value.send(RANGE_CHECKS[option], option_value) + unless value.public_send(RANGE_CHECKS[option], option_value) record.errors.add(attr_name, option, **filtered_options(value).merge!(count: option_value)) end elsif COMPARE_CHECKS.include?(option) option_value = option_as_number(record, option_value, precision, scale) - unless value.send(COMPARE_CHECKS[option], option_value) + unless value.public_send(COMPARE_CHECKS[option], option_value) record.errors.add(attr_name, option, **filtered_options(value).merge!(count: option_value)) end end