añadí en el archivo de rutas:enrutamiento con un parámetro opcional
map.show_book "/show_book/:name/year/:year", :controller => "book", :action => "show_version"
También he añadido:
map.show_book "/show_book/:name", :controller => "book", :action => "show_version"
para mostrar el último libro sin especificar el año.
Pero no funciona, no puede encontrar la ruta en "show_book/NAME" si no paso el año.
¿Tiene algunas ideas de por qué no funciona?
GRACIAS!
PS. sé que puedo usar años como parámetro con, pero desea utilizar el año como parte de la URL
Guau, esto es muy simple, pero creo que es solo para Rails3. Olvidé especificar que el proyecto está en los rieles 2.3. Pero descubrí que es suficiente usar ambas rutas, pero en el orden correcto (lo escribí en un orden incorrecto). Gracias –
"Solo" ya no es cierto, ya que esto es válido en Rails 4, y probablemente también en futuras versiones. – AlexQueue
¿Hay alguna manera de tener varias partes opcionales en la misma ruta con un orden no especificado? Soa long the lines of ... map.show_book "/ show_book /: name ((/ year /: year) (/ day /: day))" –