diff options
Diffstat (limited to 'actionpack/lib/action_controller')
-rwxr-xr-x | actionpack/lib/action_controller/base.rb | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/actionpack/lib/action_controller/base.rb b/actionpack/lib/action_controller/base.rb index 8c03f86609..2c91266f6f 100755 --- a/actionpack/lib/action_controller/base.rb +++ b/actionpack/lib/action_controller/base.rb @@ -974,11 +974,14 @@ module ActionController #:nodoc: logger.info " Parameters: #{respond_to?(:filter_parameters) ? filter_parameters(params).inspect : params.inspect}" end end - + def perform_action - if self.class.action_methods.include?(action_name) || self.class.action_methods.include?('method_missing') + if self.class.action_methods.include?(action_name) send(action_name) render unless performed? + elsif respond_to? :method_missing + send(:method_missing, action_name) + render unless performed? elsif template_exists? && template_public? render else |