aboutsummaryrefslogtreecommitdiffstats
path: root/actionpack/lib
diff options
context:
space:
mode:
authorAaron Patterson <aaron.patterson@gmail.com>2014-08-13 19:44:05 -0700
committerAaron Patterson <aaron.patterson@gmail.com>2014-08-13 19:44:05 -0700
commite4cb3819dfe36cc9a8396fb207b74980d7bd0cd5 (patch)
treecd32d104f008dfbc6b9a3cbd01926844057b53c3 /actionpack/lib
parent374d66be3e9e994bbe8ad2702ee2209c24b581b0 (diff)
downloadrails-e4cb3819dfe36cc9a8396fb207b74980d7bd0cd5.tar.gz
rails-e4cb3819dfe36cc9a8396fb207b74980d7bd0cd5.tar.bz2
rails-e4cb3819dfe36cc9a8396fb207b74980d7bd0cd5.zip
ask the scope for the action name
Diffstat (limited to 'actionpack/lib')
-rw-r--r--actionpack/lib/action_dispatch/routing/mapper.rb32
1 files changed, 18 insertions, 14 deletions
diff --git a/actionpack/lib/action_dispatch/routing/mapper.rb b/actionpack/lib/action_dispatch/routing/mapper.rb
index 46d83f7fd7..1a7e9d32e6 100644
--- a/actionpack/lib/action_dispatch/routing/mapper.rb
+++ b/actionpack/lib/action_dispatch/routing/mapper.rb
@@ -1749,20 +1749,7 @@ module ActionDispatch
member_name = parent_resource.member_name
end
- name = case scope_level
- when :nested
- [name_prefix, prefix]
- when :collection
- [prefix, name_prefix, collection_name]
- when :new
- [prefix, :new, name_prefix, member_name]
- when :member
- [prefix, name_prefix, member_name]
- when :root
- [name_prefix, collection_name, prefix]
- else
- [name_prefix, member_name, prefix]
- end
+ name = @scope.action_name(name_prefix, prefix, collection_name, member_name)
if candidate = name.compact.join("_").presence
# If a name was not explicitly given, we check if it is valid
@@ -1917,6 +1904,23 @@ module ActionDispatch
scope_level == :resources
end
+ def action_name(name_prefix, prefix, collection_name, member_name)
+ case scope_level
+ when :nested
+ [name_prefix, prefix]
+ when :collection
+ [prefix, name_prefix, collection_name]
+ when :new
+ [prefix, :new, name_prefix, member_name]
+ when :member
+ [prefix, name_prefix, member_name]
+ when :root
+ [name_prefix, collection_name, prefix]
+ else
+ [name_prefix, member_name, prefix]
+ end
+ end
+
def resource_scope?
RESOURCE_SCOPES.include? scope_level
end