Routing problem

Hi all,

I want the url something like this:


This will access the controller: profile and the action: view and the value "anyusername" is the :username parameter. So I wrote in my route file something like this

map.connect 'profile/:username', :controller => 'profile', :action=>'view'

But what I want more is that except for the value "index","edit", and "update". When the user type the url:

http://localhost:3000/profile/index, it will access controller: profile and action: index. For "edit" and "update" are in the same process.

So my finally route is:

map.connect 'profile/index', :controller => 'profile', :action=>'index' map.connect 'profile/edit', :controller => 'profile', :action=>'edit' map.connect 'profile/update', :controller => 'profile', :action=>'update' map.connect 'profile/:username', :controller => 'profile', :action=>'view'

And they are working fine. But I think it's too long. Are there any ways that is shorter than the above.

Thanks in advance,


What about: map.connect 'profile/:username', :controller => 'profile', :action => 'view' map.connect 'profile/:action', :controller => 'profile'

Andrew Timberlake

"I have never let my schooling interfere with my education" - Mark Twain

Andrew Timberlake wrote: