Forum: Ruby on Rails Routes problem.

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
gdiazl (Guest)
on 2008-10-13 11:34
(Received via mailing list)
Hello,

Just a single problem i can't solve. The scenario...

I have a controller called "places" but i don't want to link the users
to /places/whatever, i want something like /no/whatever. How to
achieve this?

I have in my routes.rb:

map.resources :no, :controller => "places",

map.connect ':controller/:action/:id'
map.connect ':controller/:action/:id.:format'

My problem is that i don't want to have 2 urls pointing to the same
page.  If I type "/places/whatever" i got the same as if i type "/no/
whatever"

Thanks in advance.
Daniel B. (Guest)
on 2008-10-13 13:01
(Received via mailing list)
On Oct 13, 10:30 am, gdiazl <removed_email_address@domain.invalid> wrote:
> map.resources :no, :controller => "places",
>
> map.connect ':controller/:action/:id'
> map.connect ':controller/:action/:id.:format'
>
> My problem is that i don't want to have 2 urls pointing to the same
> page.  If I type "/places/whatever" i got the same as if i type "/no/
> whatever"

/places/whatever is going to be there because of the default routes
above: ie
  map.connect ':controller/:action/:id
You probably don't want to mess with that setting either.

If you really want to use /places/<action> for something else, then
you'd
need to put a new rule in above the default rules to override them;
something like:
  map.connect 'places/:action/:id' , :controller =>
'some_other_controller'
Seems unlikely you'd want to do that.
So, I think living with the two routes isn't a problem.

If you really wanted to shut it off, I guess you could have
'some_other_controller'  send back an http status of 500 or something.
  map.connect 'places' , :controller =>
'some_other_controller' , :action => 'warn'

I defer to a routing expert though.

Daniel
This topic is locked and can not be replied to.