What do you think of the routing code in rails?

Do you met difficulties (functional, security, ...) with the current
implementation and the old implementation before June 1?

I found this difference between the old implementation and the current
one, for url like:


The implementation before June 1 considered the request_uri as one
single part, [path%2Ffile], but the new implementation extracts it to
[path, file]. (the old implementation was correct)

Another example:

I want to generate url using url_for, for a wikipedia-like url:


I have a route defined as map.connect('wiki/*id', :controller =>

so I call url_for with parameters url_for(:controller => 'wiki', :id =>
'Main_Page', action => 'edit')

But it fails, but if I called url_for as url_for(:controller => 'wiki',
:id => 'Main_Page', action1 => 'edit'), it can generate:


So actually, no one can generate a url using url_for, redirect_to,
link_to or whatever these stuffs for a url which contains query
parameter called "controller", "action", or "id", to generate a
Wikipedia-like url with these built-in functions would be always

And these are only two examples make me in trouble.

I think the routing in rails should be and could be better. So what do
you think? (discuss here)