2013-12-13 4 views
9

Jestem całkiem nowy dla RoR i szukam sposobu na uzyskanie trasy dla danego kontrolera, działania & param.Ruby on Rails: uzyskaj trasę za pomocą kontrolera, akcji i param

Coś podobnego do url_for(), ale bez domeny i protokołu.

Powiedzmy mam:

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

Muszę dostać:

route = "/controller/edit/1" 

najlepiej byłoby, gdybym nie musiał ręcznie zbudować drogę i jeśli nie trzeba Podziel wynik url_for().

Czy RoR natywnie obsługuje taką funkcję? To prawdopodobnie łatwe pytanie, ale nie mogłem znaleźć odpowiedzi.

+0

Czy istnieje konkretny powód, aby używać tej opcji zamiast używania nazwanych adresów URL? – screenmutt

+2

'my_action_my_controller_path (id_projektu: 1)' jest pomocnikiem niż wygeneruje ścieżkę, jak chcesz (w razie potrzeby użyj 'my_action_my_controller_url') – MrYoshiji

+1

@MrYoshiji Tak! Dziękuję Ci; właśnie tego szukałem. Znalazłem więcej informacji na temat tego pomocnika: http://guides.rubyonrails.org/routing.html#path-and-url-helpers –

Odpowiedz

1

powinny mieć możliwość korzystania z następujących

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

To będzie produkować <a> z linkiem do kontrolera/działania.