From b437053b5b5c04712b9bf851353d08cff0600430 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Rafael=20Mendon=C3=A7a=20Fran=C3=A7a?= Date: Fri, 21 Dec 2012 17:04:37 -0300 Subject: Remove ActiveModel::Errors#add_on_present method. We don't need to define a new method in ActiveMode::Errors for each validatior. See https://github.com/rails/rails/commit/d72a07f1d1478db9daed847eadb35bfd840674f6#commitcomment-2325333 --- activemodel/lib/active_model/errors.rb | 13 ------------- activemodel/lib/active_model/validations/absence.rb | 4 ++-- activemodel/lib/active_model/validator.rb | 2 +- 3 files changed, 3 insertions(+), 16 deletions(-) diff --git a/activemodel/lib/active_model/errors.rb b/activemodel/lib/active_model/errors.rb index b713e99e25..963e52bff3 100644 --- a/activemodel/lib/active_model/errors.rb +++ b/activemodel/lib/active_model/errors.rb @@ -328,19 +328,6 @@ module ActiveModel end end - # Will add an error message to each of the attributes in +attributes+ that - # is present (using Object#present?). - # - # person.errors.add_on_present(:name) - # person.errors.messages - # # => { :name => ["must be blank"] } - def add_on_present(attributes, options = {}) - Array(attributes).flatten.each do |attribute| - value = @base.send(:read_attribute_for_validation, attribute) - add(attribute, :not_blank, options) if value.present? - end - end - # Returns +true+ if an error on the attribute with the given message is # present, +false+ otherwise. +message+ is treated the same as for +add+. # diff --git a/activemodel/lib/active_model/validations/absence.rb b/activemodel/lib/active_model/validations/absence.rb index 6790554907..2c6df60020 100644 --- a/activemodel/lib/active_model/validations/absence.rb +++ b/activemodel/lib/active_model/validations/absence.rb @@ -2,8 +2,8 @@ module ActiveModel module Validations # == Active Model Absence Validator class AbsenceValidator < EachValidator #:nodoc: - def validate(record) - record.errors.add_on_present(attributes, options) + def validate_each(record, attr_name, value) + record.errors.add(attr_name, :not_blank, options) if value.present? end end diff --git a/activemodel/lib/active_model/validator.rb b/activemodel/lib/active_model/validator.rb index ff3dfa01c8..d51f4d1936 100644 --- a/activemodel/lib/active_model/validator.rb +++ b/activemodel/lib/active_model/validator.rb @@ -110,7 +110,7 @@ module ActiveModel # Return the kind for this validator. # # PresenceValidator.new.kind # => :presence - # UniquenessValidator.new.kind # => :uniqueness + # UniquenessValidator.new.kind # => :uniqueness def kind self.class.kind end -- cgit v1.2.3