PS. In fact using the “/” in the url_for (e.g. url_for :controller => "/contacts
") still seems to be an issue as rails doesn’t resolve it. As an example:
===========routes.rb extract=================
map.connect ‘/login/:en’, :controller => ‘active_rbac/login’, :action => ‘login’
map.splash ':locale', :controller => 'splash', :locale => nil
map.connect ':locale/:controller/:action/:id', :defaults => { :controller => "splash" }
==========manual debug====================
irb(#<#Class:0x38cd400:0x38cd3d0>):005:0* params
=> {“action”=>“login”, “controller”=>“active_rbac/login”, “locale”=>“fr”}
irb(#<#Class:0x38cd400:0x38cd3d0>):006:0> url_for
=> “/fr/active_rbac/login/login”
irb(#<#Class:0x38cd400:0x38cd3d0>):007:0> url_for :controller => ’
contacts’, :action => ‘list’
=> “/fr/active_rbac/contacts/list” <== NOT DESIRED URL, WILL NOT WORK, “active_rbac” should not appear
irb(#<#Class:0x38cd400:0x38cd3d0>):008:0> url_for :controller => ‘/contacts’, :action => ‘list’
ActionController::RoutingError:
No url can be generated for the hash {:action=>“list”, :controller=>“contacts”}
from (druby://localhost:42531) generated_code/routing/generation.rb:198:in `generate_default_path’
from (druby://localhost:42531) C:/InstantRails/ruby/lib/ruby/gems/1.8/gems/actionpack-1.12.5/lib/action_controller/routing.rb:473:in `generate_path'
from (druby://localhost:42531) C:/InstantRails/ruby/lib/ruby/gems/1.8/gems/actionpack-
1.12.5/lib/action_controller/routing.rb:469:in generate' from (druby://localhost:42531) C:/InstantRails/ruby/lib/ruby/gems/1.8/gems/actionpack-1.12.5/lib/action_controller/url_rewriter.rb:44:in
rewrite_path’
from (druby://localhost:42531) C:/InstantRails/ruby/lib/ruby/gems/1.8/gems/actionpack-1.12.5/lib/action_controller/url_rewriter.rb:11:in rewrite' from (druby://localhost:42531) C:/InstantRails/ruby/lib/ruby/gems/1.8/gems/actionpack- 1.12.5/lib/action_controller/base.rb:488:in
url_for’
from (druby://localhost:42531) C:/InstantRails/ruby/lib/ruby/gems/1.8/gems/actionpack-1.12.5/lib/action_view/helpers/url_helper.rb:27:in url_for' from (druby://localhost:42531) (irb):8:in
breakpoint’
from (druby://localhost:42531) C:/InstantRails/ruby/lib/ruby/gems/1.8/gems/rails-1.1.6/lib/breakpoint.rb:512:in `breakpoint'
from (druby://localhost:42531) C:/InstantRails/ruby/lib/ruby/gems/1.8/gems/rails-
1.1.6/lib/breakpoint.rb:512:in breakpoint' from (druby://localhost:42531) ./script/../config/../app/views/layouts/site_layout.rhtml:38:in
_run_rhtml_layouts_site_layout’
from (druby://localhost:42531) C:/InstantRails/ruby/lib/ruby/gems/1.8/gems/actionpack-
1.12.5/lib/action_view/base.rb:316:in compile_and_render_template' from (druby://localhost:42531) C:/InstantRails/ruby/lib/ruby/gems/1.8/gems/actionpack-1.12.5/lib/action_view/base.rb:292:in
render_template’
from (druby://localhost:42531) C:/InstantRails/ruby/lib/ruby/gems/1.8/gems/actionpack-1.12.5/lib/action_view/base.rb:251:in render_file' from (druby://localhost:42531) ./script/../config/../config/nested_layout.rb:7:in
inside_layout’
from (druby://localhost:42531) ./script/../config/../app/views/layouts/login_layout.rhtml:9:in `_run_rhtml_layouts_login_layout'... 49 levels...
from C:/InstantRails/ruby/lib/ruby/1.8/drb/drb.rb:1512:in `perform'
from C:/InstantRails/ruby/lib/ruby/1.8/drb/drb.rb:1586:in `main_loop'
from C:/InstantRails/ruby/lib/ruby/1.8/drb/drb.rb:1582:in `main_loop'
from C:/InstantRails/ruby/lib/ruby/1.8/drb/drb.rb:1578:in `main_loop'
from C:/InstantRails/ruby/lib/ruby/1.8/drb/drb.rb:1427:in `run'
from C:/InstantRails/ruby/lib/ruby/1.8/drb/drb.rb:1424:in `run'
from C:/InstantRails/ruby/lib/ruby/1.8/drb/drb.rb:1344:in `initialize'
from C:/InstantRails/ruby/lib/ruby/1.8/drb/drb.rb:1624:in `start_service'
from C:/InstantRails/ruby/lib/ruby/gems/1.8/gems/rails-1.1.6/lib/breakpoint_client.rb:146
from C:/InstantRails/ruby/lib/ruby/gems/1.8/gems/rails-
1.1.6/lib/breakpoint_client.rb:145
from C:/InstantRails/ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:21:in require' from C:/InstantRails/ruby/lib/ruby/gems/1.8/gems/activesupport-1.3.1/lib/active_support/dependencies.rb:147:in
require’
from C:/InstantRails/ruby/lib/ruby/gems/1.8/gems/rails-1.1.6/lib/commands/breakpointer.rb:1
from C:/InstantRails/ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:21:in `require'
from C:/InstantRails/ruby/lib/ruby/gems/1.8/gems/activesupport-
1.3.1/lib/active_support/dependencies.rb:147:in `require’
from script/breakpointer:3irb(#<#Class:0x38cd400:0x38cd3d0>):009:0>