Domyślny routing dla zasobu

Jak mogę zmienić domyślny routing dla pewnego zasobu? Tj. Mam Page, który ma m.in. kolumnę alias:string.
Chciałbym, aby stronę można było wyświetlić przez /:alias.
W routingu mam

resources :pages match "/:alias" => "pages#show"
I działa pięknie : )

Jednakże, np. po edytowaniu Page przekierowuje mnie na /pages/:id, wiem że ma to związek z tym, że jest w routingu resources :pages.
Jak mogę zmienić @page, tzn. przekierowywanie np.

redirect_to(@page, :notice => 'Page was successfully created.')

aby kierowało na /:alias a nie /pages/:id.

Trochę chaotycznie, ale ciężko mi to inaczej wytłumaczyć :<
Pozdrawiam

Świstak

EDIT: Oczywiście korzystam z Rails 3.

Może tak;

get "/:alias" => "pages#show", :as=>alias resources :pages
A w kontrolerze:

redirect_to(alias_path(:alias=>@page.alias), :notice => 'Page was successfully created.')

W ten sposób uzyskasz dokładnie to co chciałeś ale może warto zastanowić się nad innym rozwiązaniem. Co powiesz na adres “/pages/10-Jakis_alias”? Taką formę możesz uzyskać bez poprawiania routingu i wywoływania adresów w kontrolerach i widokach. wystarczy, że w modelu Page nadpiszesz metodę to_param tak by zwracała “#{id}-#{alias}” zamiast samego id. Jeśli drażni Cie “pages” w adresie to może zainteresuj się pluginem i18n-route.

Akurat :id-:alias nic by mi nie przeszkadzało - bardziej irytowałby mnie tutaj fakt tego “pages” i nie chodzi mi tutaj o to, że jest po angielsku - po prostu chciałbym aby tutaj były różnego rodzaju statyczne strony typu about, contact, etc.
A nie da się może po prostu zrobić, aby /:alias przekierowywało na /pages/:id (najlepiej z zachowaniem w pasku adresu /:alias)?

Nie wiem czy Cie dobrze zrozumialem, ale obczaj sobie to : http://github.com/svenfuchs/routing-filter/blob/master/lib/routing_filter/filters/pagination.rb