Routing problem

0 views
Skip to first unread message

Mako

unread,
Mar 10, 2009, 3:47:58 AM3/10/09
to Ruby on Rails: Talk
Hi all,

I want the url something like this:

http://localhost:3000/profile/anyusername

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,

Mako

Andrew Timberlake

unread,
Mar 11, 2009, 7:51:25 AM3/11/09
to rubyonra...@googlegroups.com
What about:
map.connect 'profile/:username', :controller => 'profile', :action => 'view'
map.connect 'profile/:action', :controller => 'profile'

Andrew Timberlake
http://ramblingsonrails.com
http://www.linkedin.com/in/andrewtimberlake

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

Tom Z Meinlschmidt

unread,
Mar 11, 2009, 8:20:32 AM3/11/09
to rubyonra...@googlegroups.com

map.connect '/profile/:action', :controller => 'profile', :requirements
=> {:action => /(edit|update|new|index)/ }
map.connect '/profile/:username', :controller => 'profile', :action =>
'view'

tom
--
===============================================================================
Tomas Meinlschmidt, MS {MCT, MCP+I, MCSE, AER}, NetApp Filer/NetCache

www.meinlschmidt.com www.maxwellrender.cz www.lightgems.cz
===============================================================================

Reply all
Reply to author
Forward
0 new messages