Luke Redpath
2006-Mar-26 23:34 UTC
[Rails] Controllers in modules, not recognised - driving me mad!
Hi, I hope somebody can help me here but I''m having a very strange
problem getting Rails to recognise controllers inside modules. The
strange thing is, it was working the other day and I''ve not changed
anything as far as I''m aware. I''m running on OSX using Ruby
1.8.4 and
Rails RC1 (but I''ve also tried rolling back to Rails 1.0 and tried Edge
Rails) and the problem occurs using lighty, webrick and when I run my
functional tests (I have a few assert_routings).
I have a Dashboard controller in an admin module. I have the following
file:
app/controllers/admin/dashboard_controller.rb
---
class Admin::DashboardController < ActionController::Base
def index
# do stuff
end
end
Now, this should be automatically picked up by Rails as
http://myapp/admin/dashboard and http://myapp/admin/dashboard/index -
but they aren''t, I get routing errors.
I also have the following test:
require File.dirname(__FILE__) + ''/../test_helper''
class RoutingTest < Test::Unit::TestCase
def setup
@request = ActionController::TestRequest.new
@response = ActionController::TestResponse.new
end
def test_admin_routing
assert_routing ''/admin'', :controller =>
''admin/dashboard'', :action
=> ''index''
assert_routing ''/admin/dashboard'', :controller =>
''admin/dashboard'', :action => ''index''
end
end
These tests fail.
What could be happening here? There isn''t anything revealing in my
logs,
and like I said this was working the other day - they only work I''ve
been doing on my app since then is on one of my model classes and its
unit tests - I''ve not been touching my views/controllers.
Here''s the relevant exerpt from my logs:
Processing Base#index (for 127.0.0.1 at 2006-03-27 00:34:05) [GET]
Session ID: 6145b5c6d7884639db0adc70113f5e86
Parameters: {}
ActionController::RoutingError (Recognition failed for
"/admin/dashboard/"):
.//vendor/rails/actionpack/lib/action_controller/routing.rb:488:in
`recognition_failed''
.//vendor/rails/actionpack/lib/action_controller/routing.rb:478:in
`recognize!''
.//vendor/rails/railties/lib/dispatcher.rb:38:in `dispatch''
.//vendor/rails/railties/lib/webrick_server.rb:115:in
`handle_dispatch''
.//vendor/rails/railties/lib/webrick_server.rb:81:in `service''
/usr/local/lib/ruby/1.8/webrick/httpserver.rb:104:in `service''
/usr/local/lib/ruby/1.8/webrick/httpserver.rb:65:in `run''
/usr/local/lib/ruby/1.8/webrick/server.rb:173:in `start_thread''
/usr/local/lib/ruby/1.8/webrick/server.rb:162:in `start_thread''
/usr/local/lib/ruby/1.8/webrick/server.rb:95:in `start''
/usr/local/lib/ruby/1.8/webrick/server.rb:92:in `start''
/usr/local/lib/ruby/1.8/webrick/server.rb:23:in `start''
/usr/local/lib/ruby/1.8/webrick/server.rb:82:in `start''
.//vendor/rails/railties/lib/webrick_server.rb:67:in `dispatch''
.//vendor/rails/railties/lib/commands/servers/webrick.rb:59
.//vendor/rails/activesupport/lib/active_support/dependencies.rb:149:in
`require''
.//vendor/rails/railties/lib/commands/server.rb:30
script/server:3
Rendering
./script/../config/../vendor/rails/actionpack/lib/action_controller/templates/rescues/layout.rhtml
(404 Page Not Found)
--
Posted via http://www.ruby-forum.com/.
Luke Redpath
2006-Mar-27 00:55 UTC
[Rails] Re: Controllers in modules, not recognised - driving me mad!
OK I finally worked this out after much hairpulling! The aforementioned model I had been working on was called Admin and this was conflicting with the ''admin'' module. -- Posted via http://www.ruby-forum.com/.
Carl-Johan Kihlbom
2006-Mar-27 22:42 UTC
[Rails] Re: Controllers in modules, not recognised - driving me mad!
Thank you for this! I''ve also been pulling my hair, but no more! Thanks! On 3/27/06, Luke Redpath <contact@lukeredpath.co.uk> wrote:> OK I finally worked this out after much hairpulling! The aforementioned > model I had been working on was called Admin and this was conflicting > with the ''admin'' module. > > -- > Posted via http://www.ruby-forum.com/. > _______________________________________________ > Rails mailing list > Rails@lists.rubyonrails.org > http://lists.rubyonrails.org/mailman/listinfo/rails >