Routing CRUD

hi,

I’m trying to setup a route next to my
resources :users

So this gives me the basic routes (incl. users/:id)
But now I’d like to show users through their username (like this:
users/:username)

How should I do that?

I’ve got my routes setup like this at the moment: (the
users/:username) does work now, but all the rest doesn’t work (for the
users controller)

resource :account, :controller => “users”

match ‘/users/:username’ => ‘users#show’

resources :users, :user_sessions, :homes, :shouts, :activations

match ‘/register/:activation_code’ => ‘activations#new’, :as
=> :register
match ‘/activate/:id’ => ‘activations#create’, :as => :activate

root :to => “homes#index”

Thx :wink:

On 11/2/10, mattyh88 [email protected] wrote:

I’ve got my routes setup like this at the moment: (the
users/:username) does work now, but all the rest doesn’t work (for the
users controller)

resource :account, :controller => “users”

match ‘/users/:username’ => ‘users#show’

resources :users, :user_sessions, :homes, :shouts, :activations

I am not really an expert with routes, but if I am not mistaken, this
has to do with rules precedece. That is, your match
‘/users/:username’… will have precedence over resources :users…
You should place resources before any match.

Perhaps others with more experience will be able to help further.

Regards,

Fidel.

Thank you for the reply.
But if i put the resources first, then my match users/:username doesnt
work.
So it’s true what you say, first route will be used.