This project is archived and is in readonly mode.
[BUG] Routes matching a :controller /regexp/ raise NameError
Reported by MatthewRudy | July 17th, 2008 @ 01:39 PM | in 2.x
#admin controller routes
map.connect ':controller/:action/:id', :requirements => { :controller => /admin[\/]?[\w\d]*/ }
GET /admin/doesnt_exist
will raise a NameError
when it tries to do,
"Admin::DoesntExistController".constantize
and hence we get a 500 error.
Really we want this exception to be caught,
and fall through to the next level,
and eventually hit a RoutingError
and a 404.
Had a look at the routing code,
but haven't quite worked out how to fix it.
Comments and changes to this ticket
-
MatthewRudy July 17th, 2008 @ 01:40 PM
NameError in Admin/doesnt existController#index uninitialized constant Admin::DoesntExistController RAILS_ROOT: /Users/matthew/code/aspire Application Trace | Framework Trace | Full Trace vendor/rails/activesupport/lib/active_support/dependencies.rb:263:in `load_missing_constant' vendor/rails/activesupport/lib/active_support/dependencies.rb:453:in `const_missing' vendor/rails/activesupport/lib/active_support/inflector.rb:260:in `constantize' vendor/rails/activesupport/lib/active_support/core_ext/string/inflections.rb:151:in `constantize' vendor/rails/actionpack/lib/action_controller/routing.rb:1426:in `recognize' vendor/rails/actionpack/lib/action_controller/dispatcher.rb:170:in `handle_request' vendor/rails/actionpack/lib/action_controller/dispatcher.rb:115:in `dispatch' vendor/rails/actionpack/lib/action_controller/dispatcher.rb:126:in `dispatch_cgi' vendor/rails/actionpack/lib/action_controller/dispatcher.rb:9:in `dispatch' /Library/Ruby/Gems/1.8/gems/mongrel-1.1.5/lib/mongrel/rails.rb:76:in `process' /Library/Ruby/Gems/1.8/gems/mongrel-1.1.5/lib/mongrel/rails.rb:74:in `synchronize' /Library/Ruby/Gems/1.8/gems/mongrel-1.1.5/lib/mongrel/rails.rb:74:in `process' /Library/Ruby/Gems/1.8/gems/mongrel-1.1.5/lib/mongrel.rb:159:in `process_client' /Library/Ruby/Gems/1.8/gems/mongrel-1.1.5/lib/mongrel.rb:158:in `each' /Library/Ruby/Gems/1.8/gems/mongrel-1.1.5/lib/mongrel.rb:158:in `process_client' /Library/Ruby/Gems/1.8/gems/mongrel-1.1.5/lib/mongrel.rb:285:in `run' /Library/Ruby/Gems/1.8/gems/mongrel-1.1.5/lib/mongrel.rb:285:in `initialize' /Library/Ruby/Gems/1.8/gems/mongrel-1.1.5/lib/mongrel.rb:285:in `new' /Library/Ruby/Gems/1.8/gems/mongrel-1.1.5/lib/mongrel.rb:285:in `run' /Library/Ruby/Gems/1.8/gems/mongrel-1.1.5/lib/mongrel.rb:268:in `initialize' /Library/Ruby/Gems/1.8/gems/mongrel-1.1.5/lib/mongrel.rb:268:in `new' /Library/Ruby/Gems/1.8/gems/mongrel-1.1.5/lib/mongrel.rb:268:in `run' /Library/Ruby/Gems/1.8/gems/mongrel-1.1.5/lib/mongrel/configurator.rb:282:in `run' /Library/Ruby/Gems/1.8/gems/mongrel-1.1.5/lib/mongrel/configurator.rb:281:in `each' /Library/Ruby/Gems/1.8/gems/mongrel-1.1.5/lib/mongrel/configurator.rb:281:in `run' /Library/Ruby/Gems/1.8/gems/mongrel-1.1.5/bin/mongrel_rails:128:in `run' /Library/Ruby/Gems/1.8/gems/mongrel-1.1.5/lib/mongrel/command.rb:212:in `run' /Library/Ruby/Gems/1.8/gems/mongrel-1.1.5/bin/mongrel_rails:281
(from rails 2.0.2, similar traceback from edge)
-
josh October 28th, 2008 @ 04:26 PM
- State changed from new to stale
Staling out, please reopen if this is still a problem.
Create your profile
Help contribute to this project by taking a few moments to create your personal profile. Create your profile »
<h2 style="font-size: 14px">Tickets have moved to Github</h2>
The new ticket tracker is available at <a href="https://github.com/rails/rails/issues">https://github.com/rails/rails/issues</a>