Rails 3 enrutamiento de recursos sin una identificación

Estoy creando una aplicación de blog en Rails 3, y quiero anular la ruta de presentación predeterminada generada para una publicación haciendo

resources :posts, :except => :show

Lo que genera, para la ruta del show (si no lo hubiera excluido),

/post/:id

Quiero que mi ruta se vea así, donde url_title es una cadena generada por mi modelo en before_save, donde elimina caracteres no alfanuméricos y reemplaza espacios con guiones.

/:year/:month/:day/:url_title

Estoy tratando de lograr esto con este bit de código:

match "/:year/:month/:day/:url_title", :to => "posts#show", :as => :post

En teoría, esto debería permitirme llamar a post_path (@post) (donde @post es una instancia de mi clase de publicación), y debería poder ordenar esta ruta, ycas trabajos

El único problema es que intenta sustituir la identificación de la publicación para el año. Los otros campos se completan correctamente. Creo que esto está sucediendo porque los rieles tienen un comportamiento predeterminado que hace que realmente quiera tener la identificación en la url, y no confía en mí para usar mi propio identificador único (post.url_title, en este caso).

Aunque podría estar equivocado sobre eso. ¿Alguien tiene experiencia con este tipo de enrutamiento o sabe qué pasa?

Respuestas a la pregunta(2)

Su respuesta a la pregunta