diff options
author | José Valim <jose.valim@gmail.com> | 2011-05-17 14:51:44 -0400 |
---|---|---|
committer | José Valim <jose.valim@gmail.com> | 2011-05-17 14:51:44 -0400 |
commit | 760dec17bea1cf10534d33d409e4d6e1ff62c6af (patch) | |
tree | 630dceb455cabc41ab277230e964e7796fd42c7d /actionpack/lib/action_controller | |
parent | 1d71c93f99f25e13719e4a6697f7630996421ca4 (diff) | |
download | rails-760dec17bea1cf10534d33d409e4d6e1ff62c6af.tar.gz rails-760dec17bea1cf10534d33d409e4d6e1ff62c6af.tar.bz2 rails-760dec17bea1cf10534d33d409e4d6e1ff62c6af.zip |
Use anonymous? that works on both Ruby 1.8 and 1.9.
Diffstat (limited to 'actionpack/lib/action_controller')
-rw-r--r-- | actionpack/lib/action_controller/metal/params_wrapper.rb | 5 | ||||
-rw-r--r-- | actionpack/lib/action_controller/test_case.rb | 7 |
2 files changed, 7 insertions, 5 deletions
diff --git a/actionpack/lib/action_controller/metal/params_wrapper.rb b/actionpack/lib/action_controller/metal/params_wrapper.rb index b7c37ce1c1..93241fc056 100644 --- a/actionpack/lib/action_controller/metal/params_wrapper.rb +++ b/actionpack/lib/action_controller/metal/params_wrapper.rb @@ -2,6 +2,7 @@ require 'active_support/core_ext/class/attribute' require 'active_support/core_ext/hash/slice' require 'active_support/core_ext/hash/except' require 'active_support/core_ext/array/wrap' +require 'active_support/core_ext/module/anonymous' require 'action_dispatch/http/mime_types' module ActionController @@ -140,7 +141,7 @@ module ActionController # This method also does namespace lookup. Foo::Bar::UsersController will # try to find Foo::Bar::User, Foo::User and finally User. def _default_wrap_model #:nodoc: - return nil if self.name.nil? + return nil if self.anonymous? model_name = self.name.sub(/Controller$/, '').singularize @@ -170,7 +171,7 @@ module ActionController end end - unless options[:name] || self.name.nil? + unless options[:name] || self.anonymous? model ||= _default_wrap_model options[:name] = model ? model.to_s.demodulize.underscore : controller_name.singularize diff --git a/actionpack/lib/action_controller/test_case.rb b/actionpack/lib/action_controller/test_case.rb index 5e4b48a531..89ff5ba174 100644 --- a/actionpack/lib/action_controller/test_case.rb +++ b/actionpack/lib/action_controller/test_case.rb @@ -2,6 +2,7 @@ require 'rack/session/abstract/id' require 'active_support/core_ext/object/blank' require 'active_support/core_ext/object/to_query' require 'active_support/core_ext/class/attribute' +require 'active_support/core_ext/module/anonymous' module ActionController module TemplateAssertions @@ -413,9 +414,9 @@ module ActionController @request.env['REQUEST_METHOD'] = http_method parameters ||= {} - controller_class_name = @controller.class.name ? - @controller.class.name.underscore.sub(/_controller$/, '') : - "anonymous_controller" + controller_class_name = @controller.class.anonymous? ? + "anonymous_controller" : + @controller.class.name.underscore.sub(/_controller$/, '') @request.assign_parameters(@routes, controller_class_name, action.to_s, parameters) |