diff options
author | Dylan Waits <dylan@waits.io> | 2016-04-02 18:38:22 -0700 |
---|---|---|
committer | Dylan Waits <dylan@waits.io> | 2016-04-03 17:44:11 -0700 |
commit | e09e600a48e525553767da5a1ec2e756fe62aac4 (patch) | |
tree | cadc52f3e55af4ca5c87bbb50389f00cea1d276e /actionpack/lib/action_dispatch | |
parent | 8040e55063abde6eeaac2702ca9961ce34a2d6c7 (diff) | |
download | rails-e09e600a48e525553767da5a1ec2e756fe62aac4.tar.gz rails-e09e600a48e525553767da5a1ec2e756fe62aac4.tar.bz2 rails-e09e600a48e525553767da5a1ec2e756fe62aac4.zip |
Honor shallow: false on nested resources
Previously there was no way to place a non-shallow resource inside a parent
with `shallow: true` set. Now you can set `shallow: false` on a nested child
resource to generate normal (non-shallow) routes for it.
Fixes #23890.
Diffstat (limited to 'actionpack/lib/action_dispatch')
-rw-r--r-- | actionpack/lib/action_dispatch/routing/mapper.rb | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/actionpack/lib/action_dispatch/routing/mapper.rb b/actionpack/lib/action_dispatch/routing/mapper.rb index 16b430c36e..81ffea4d5d 100644 --- a/actionpack/lib/action_dispatch/routing/mapper.rb +++ b/actionpack/lib/action_dispatch/routing/mapper.rb @@ -1362,6 +1362,8 @@ module ActionDispatch # as a comment on a blog post like <tt>/posts/a-long-permalink/comments/1234</tt> # to be shortened to just <tt>/comments/1234</tt>. # + # Set shallow: false on a child resource to ignore a parent's shallow parameter. + # # [:shallow_path] # Prefixes nested shallow routes with the specified path. # @@ -1724,7 +1726,8 @@ to this: return true end - if options.delete(:shallow) + if options[:shallow] + options.delete(:shallow) shallow do send(method, resources.pop, options, &block) end |