diff options
author | Vijay Dev <vijaydev.cse@gmail.com> | 2012-04-25 06:06:14 -0700 |
---|---|---|
committer | Vijay Dev <vijaydev.cse@gmail.com> | 2012-04-25 06:06:14 -0700 |
commit | cd65682835c3fe1cbad8d02f3282c64a24d29b71 (patch) | |
tree | efef51f667ab2562dac027534a875646799663ab /activemodel | |
parent | 4a3ce153f1e05c9c590e9ee74e818649336d929f (diff) | |
parent | 9072a08fac61e7c692d8d70c0941839ea640a978 (diff) | |
download | rails-cd65682835c3fe1cbad8d02f3282c64a24d29b71.tar.gz rails-cd65682835c3fe1cbad8d02f3282c64a24d29b71.tar.bz2 rails-cd65682835c3fe1cbad8d02f3282c64a24d29b71.zip |
Merge pull request #5878 from oscardelben/refactor_observed_class
Refactor Observer.observed_class
Diffstat (limited to 'activemodel')
-rw-r--r-- | activemodel/lib/active_model/observing.rb | 7 |
1 files changed, 2 insertions, 5 deletions
diff --git a/activemodel/lib/active_model/observing.rb b/activemodel/lib/active_model/observing.rb index a6b6dfafe7..35b1a1f0c7 100644 --- a/activemodel/lib/active_model/observing.rb +++ b/activemodel/lib/active_model/observing.rb @@ -5,6 +5,7 @@ require 'active_support/core_ext/module/remove_method' require 'active_support/core_ext/string/inflections' require 'active_support/core_ext/enumerable' require 'active_support/deprecation' +require 'active_support/core_ext/object/try' require 'active_support/descendants_tracker' module ActiveModel @@ -212,11 +213,7 @@ module ActiveModel # The class observed by default is inferred from the observer's class name: # assert_equal Person, PersonObserver.observed_class def observed_class - if observed_class_name = name[/(.*)Observer/, 1] - observed_class_name.constantize - else - nil - end + name[/(.*)Observer/, 1].try :constantize end end |