Charlie Hubbard wrote:
Hi,
I have an outstanding problem with route generation. Right now if I generate a route with the following syntax.
url_for( :controller => "foo", :action => "bar", :id => 4 )
I get
/foo/bar/4
I always get a URL without a trailing slash on the end. I want to add a trailing slash always after the ID parameter. I have generated HTML content that I want to always append to the root URL like above. And I keep getting bad URLS. I also have another problem when doing route generation where:
url_for( :controller => "foo", :action => "bar", :id => 4, :page => 5 )
returns:
/foo/bar/4?page=5
Eventhough my route configuration is:
map.connect "foo/bar/:id/:page", :controller => "Foo", :action => "bar", :requirements => { :id => /\d+/, :page => /(\d+)|(\w+\.html)/ }
This rule is never used when generating routes, and it's really important because of the problem I showed above.
Any help please?
Charlie
Hey C,
I guess you already tried the following, but just in case:
map.connect "foo/bar/:id/:page", :controller => "foo", :action => "bar", :requirements => { :id => /\d+/, :page => /(\d+)|(\w+\.html)/ }
# I've never had explicit x.html # requests routed to rails though # so I've no idea if it'll work
map.connect ":controller/:action/:id/" map.connect ":controller/:action/:id"
# should solve the trailing slash issue
Gustav Paul gustav@rails.co.za