2013-12-13 17 views
9

Sono abbastanza nuovo per RoR e sto cercando un modo per ottenere un percorso per un dato controller, azione & param.Ruby on Rails: ottieni percorso utilizzando controller, action e param

Qualcosa di simile a url_for() ma senza il dominio e il protocollo.

Diciamo che ho:

params = {"controller"=>"controller", "action"=>"edit", "project_id"=>"1"} 

ho bisogno di ottenere:

route = "/controller/edit/1" 

Sarebbe meglio se non ho a costruire manualmente il percorso e se non ho bisogno di dividi il risultato di url_for().

RoR supporta in modo nativo tale funzione? È probabilmente una domanda facile, ma non sono riuscito a trovare una risposta.

+0

c'è un motivo specifico per utilizzare questo rispetto all'utilizzo di URL di nome? – screenmutt

+2

'my_action_my_controller_path (project_id: 1)' è l'helper che genererà un percorso come vuoi (usa 'my_action_my_controller_url', se necessario) – MrYoshiji

+1

@MrYoshiji Sì! Grazie; questo è esattamente quello che stavo cercando. Ho trovato maggiori informazioni su questo helper: http://guides.rubyonrails.org/routing.html#path-and-url-helpers –

risposta

1

Si dovrebbe essere in grado di utilizzare il seguente

link_to "Link Content", :controller => "my_controller", :action => "my_action", :project_id => 1 

Ciò produrrà un <a> con un link al tuo controller/azione.

Problemi correlati