aboutsummaryrefslogtreecommitdiffstats
path: root/actionpack/lib/action_dispatch/http/request.rb
diff options
context:
space:
mode:
authorDavid Heinemeier Hansson <david@loudthinking.com>2017-08-01 16:59:37 -0500
committerDavid Heinemeier Hansson <david@loudthinking.com>2017-08-01 16:59:37 -0500
commite473946d58cfdab0b16cf91cdad6bef23fcfafc3 (patch)
tree8381b3ddd0fca7ef6e9cb7f79aa53a768ecbf376 /actionpack/lib/action_dispatch/http/request.rb
parent3d3ec20a485a109bb772cb37382040e25f5d0ded (diff)
parentf9a43f28c087f8ffd35ff7c33a60c938b60f2be2 (diff)
downloadrails-e473946d58cfdab0b16cf91cdad6bef23fcfafc3.tar.gz
rails-e473946d58cfdab0b16cf91cdad6bef23fcfafc3.tar.bz2
rails-e473946d58cfdab0b16cf91cdad6bef23fcfafc3.zip
Merge branch 'master' into active-storage-import
Diffstat (limited to 'actionpack/lib/action_dispatch/http/request.rb')
-rw-r--r--actionpack/lib/action_dispatch/http/request.rb9
1 files changed, 6 insertions, 3 deletions
diff --git a/actionpack/lib/action_dispatch/http/request.rb b/actionpack/lib/action_dispatch/http/request.rb
index 94b0d4880c..0b38ab7afb 100644
--- a/actionpack/lib/action_dispatch/http/request.rb
+++ b/actionpack/lib/action_dispatch/http/request.rb
@@ -76,10 +76,13 @@ module ActionDispatch
def controller_class
params = path_parameters
+ params[:action] ||= "index"
+ controller_class_for(params[:controller])
+ end
- if params.key?(:controller)
- controller_param = params[:controller].underscore
- params[:action] ||= "index"
+ def controller_class_for(name)
+ if name
+ controller_param = name.underscore
const_name = "#{controller_param.camelize}Controller"
ActiveSupport::Dependencies.constantize(const_name)
else