diff options
author | Pablo Herrero <pablodherrero@gmail.com> | 2014-09-30 08:58:37 -0300 |
---|---|---|
committer | Pablo Herrero <pablodherrero@gmail.com> | 2014-09-30 09:25:04 -0300 |
commit | 291f64469fb575daad7a293a4cd3c0ec2911e25c (patch) | |
tree | 589205942cb0754d2a40fcd1826eedfc81be008f | |
parent | 79c491e838f83b027b093242cdaf22f47935c258 (diff) | |
download | rails-291f64469fb575daad7a293a4cd3c0ec2911e25c.tar.gz rails-291f64469fb575daad7a293a4cd3c0ec2911e25c.tar.bz2 rails-291f64469fb575daad7a293a4cd3c0ec2911e25c.zip |
Refactor callback setup in to use lambda instead of eval
-rw-r--r-- | activemodel/lib/active_model/validations.rb | 2 | ||||
-rw-r--r-- | activemodel/lib/active_model/validations/callbacks.rb | 6 |
2 files changed, 5 insertions, 3 deletions
diff --git a/activemodel/lib/active_model/validations.rb b/activemodel/lib/active_model/validations.rb index b5b8ce1257..718fc78605 100644 --- a/activemodel/lib/active_model/validations.rb +++ b/activemodel/lib/active_model/validations.rb @@ -156,7 +156,7 @@ module ActiveModel if options.key?(:on) options = options.dup options[:if] = Array(options[:if]) - options[:if].unshift lambda { |o| + options[:if].unshift ->(o) { Array(options[:on]).include?(o.validation_context) } end diff --git a/activemodel/lib/active_model/validations/callbacks.rb b/activemodel/lib/active_model/validations/callbacks.rb index e22d8a81c0..1a5192b0ff 100644 --- a/activemodel/lib/active_model/validations/callbacks.rb +++ b/activemodel/lib/active_model/validations/callbacks.rb @@ -58,7 +58,7 @@ module ActiveModel if options.is_a?(Hash) && options[:on] options[:if] = Array(options[:if]) options[:on] = Array(options[:on]) - options[:if].unshift lambda { |o| + options[:if].unshift ->(o) { options[:on].include? o.validation_context } end @@ -98,7 +98,9 @@ module ActiveModel options[:if] = Array(options[:if]) if options[:on] options[:on] = Array(options[:on]) - options[:if].unshift("#{options[:on]}.include? self.validation_context") + options[:if].unshift ->(o) { + options[:on].include? o.validation_context + } end set_callback(:validation, :after, *(args << options), &block) end |