ruby-on-rails - ror - routes rails examples
cambio de acción del controlador de enrutamiento de carriles (3)
Estoy luchando aquí con un problema: tengo un controlador de preguntas que tiene acción nueva . Cada vez que necesito crear una nueva pregunta, escribo
/questions/new
¿Qué cambios en routes.rb debo hacer para cambiar el URI a
/questions/ask
Gracias. Válvula.
¿Qué versión de rieles?
En general, la ruta predeterminada debería capturar algo como /: controller /: action, por lo que podría simplemente crear un método ask en su controlador de preguntas. Eche un vistazo a la documentación api para named_route y map_resource si quiere que algo sea más fácil de usar.
Prueba esto:
map.ask_question ''/questions/ask'', :controller => ''questions'', :action => ''new''
Entonces tendrás una ruta con nombre y podrás:
link_to "Ask a question", ask_question_path
Si está utilizando rutas RESTful quizás le gustaría usar map.resources para sus preguntas .
Para cambiar el nombre de las URL de acción puede hacer esto:
map.resources :questions, :path_names => { :new => ''ask'', :delete => ''withdraw'' }
(Agregué eliminar por el bien del ejemplo)