Senderos bonitos en rieles
Tengo un modelo de categoría y lo estoy enrutando usando el andamiaje predeterminado deresources :categories
. Me pregunto si hay una manera de cambiar los caminos de/category/:id
a/category/:name
. Yo añadí:
match "/categories/:name" => "categories#show"
por encima de la línea de recursos enroutes.rb
y cambió elshow
acción en el controlador para hacer:
@category = Category.find_by_name(params[:name])
funciona, pero los 'caminos mágicos' comolink_to some_category
todavía uso el:id
formato.
¿Hay alguna forma de hacer esto? Si esta es una mala idea (debido a alguna forma posible en que los rieles funcionan internamente), ¿hay otra forma de lograrlo? Así que eso/categories/music
, por ejemplo, y/categories/3
¿ambos trabajan?