diff options
author | Piotr Sarnacki <drogus@gmail.com> | 2010-08-05 23:16:08 +0200 |
---|---|---|
committer | Piotr Sarnacki <drogus@gmail.com> | 2010-09-05 13:44:37 +0200 |
commit | 8958f332bbb552e87fd9f8c78dd11bdeab7897fc (patch) | |
tree | 48c2a327173b31427640d2ec6f29767dbb1cd4a7 /actionpack/lib/action_dispatch | |
parent | e6b93fa6db645d0acf18fc36d99ac8e13cb2091a (diff) | |
download | rails-8958f332bbb552e87fd9f8c78dd11bdeab7897fc.tar.gz rails-8958f332bbb552e87fd9f8c78dd11bdeab7897fc.tar.bz2 rails-8958f332bbb552e87fd9f8c78dd11bdeab7897fc.zip |
Implemented resources :foos, :except => :all option
Diffstat (limited to 'actionpack/lib/action_dispatch')
-rw-r--r-- | actionpack/lib/action_dispatch/routing/mapper.rb | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/actionpack/lib/action_dispatch/routing/mapper.rb b/actionpack/lib/action_dispatch/routing/mapper.rb index cee3fd880c..f52fb91e97 100644 --- a/actionpack/lib/action_dispatch/routing/mapper.rb +++ b/actionpack/lib/action_dispatch/routing/mapper.rb @@ -611,9 +611,18 @@ module ActionDispatch end def actions - if only = @options[:only] + only, except = @options.values_at(:only, :except) + if only == :all || except == :none + only = nil + except = [] + elsif only == :none || except == :all + only = [] + except = nil + end + + if only Array(only).map(&:to_sym) - elsif except = @options[:except] + elsif except default_actions - Array(except).map(&:to_sym) else default_actions |