diff options
author | Rafael Mendonça França <rafaelmfranca@gmail.com> | 2013-05-23 10:00:52 -0300 |
---|---|---|
committer | Rafael Mendonça França <rafaelmfranca@gmail.com> | 2013-05-23 10:00:54 -0300 |
commit | 9e5b8e3831552a103b2dcf8de75fb6a2337d42ba (patch) | |
tree | ef7f47142b07726fc2c7a954d400a9c1ef7558e5 /activemodel/lib/active_model/validations/confirmation.rb | |
parent | 30d28b19584783218e842ce2fd7bfe2bc1dccf66 (diff) | |
parent | 7d84c3a2f7ede0e8d04540e9c0640de7378e9b3a (diff) | |
download | rails-9e5b8e3831552a103b2dcf8de75fb6a2337d42ba.tar.gz rails-9e5b8e3831552a103b2dcf8de75fb6a2337d42ba.tar.bz2 rails-9e5b8e3831552a103b2dcf8de75fb6a2337d42ba.zip |
Merge branch 'deprecate-validator-setup'
Closes #10716
Diffstat (limited to 'activemodel/lib/active_model/validations/confirmation.rb')
-rw-r--r-- | activemodel/lib/active_model/validations/confirmation.rb | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/activemodel/lib/active_model/validations/confirmation.rb b/activemodel/lib/active_model/validations/confirmation.rb index 1d85378892..b0542661af 100644 --- a/activemodel/lib/active_model/validations/confirmation.rb +++ b/activemodel/lib/active_model/validations/confirmation.rb @@ -2,6 +2,11 @@ module ActiveModel module Validations class ConfirmationValidator < EachValidator # :nodoc: + def initialize(options) + super + setup!(options[:class]) + end + def validate_each(record, attribute, value) if (confirmed = record.send("#{attribute}_confirmation")) && (value != confirmed) human_attribute_name = record.class.human_attribute_name(attribute) @@ -9,7 +14,8 @@ module ActiveModel end end - def setup(klass) + private + def setup!(klass) klass.send(:attr_reader, *attributes.map do |attribute| :"#{attribute}_confirmation" unless klass.method_defined?(:"#{attribute}_confirmation") end.compact) |