diff options
author | Aaron Patterson <aaron.patterson@gmail.com> | 2014-08-13 19:44:05 -0700 |
---|---|---|
committer | Aaron Patterson <aaron.patterson@gmail.com> | 2014-08-13 19:44:05 -0700 |
commit | e4cb3819dfe36cc9a8396fb207b74980d7bd0cd5 (patch) | |
tree | cd32d104f008dfbc6b9a3cbd01926844057b53c3 /actionpack | |
parent | 374d66be3e9e994bbe8ad2702ee2209c24b581b0 (diff) | |
download | rails-e4cb3819dfe36cc9a8396fb207b74980d7bd0cd5.tar.gz rails-e4cb3819dfe36cc9a8396fb207b74980d7bd0cd5.tar.bz2 rails-e4cb3819dfe36cc9a8396fb207b74980d7bd0cd5.zip |
ask the scope for the action name
Diffstat (limited to 'actionpack')
-rw-r--r-- | actionpack/lib/action_dispatch/routing/mapper.rb | 32 |
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 |