2012-08-02 95 views
0

如果我有像這樣的Rails的link_to與URL動作參數

get 'controller/:id/action/:param' => 'Controller#action' 

如何使用link_to創建像<a href="/controller/12345/action/abcde">鏈接的路線?

到目前爲止,我已經得到了link_to 'Link text', {:action => 'action'}

給我<a href="/controller/12345/action">

但使用link_to 'Link text', {:action => 'action', :param => 'abcde'}

會給我<a href="/controller/12345/action?param=abcde">

回答

1

您可以命名您的路線:

get 'controller/:id/action/:param' => 'Controller#action', :as => 'custom_show' 

這應該給你,你可以使用這樣一個新的URL幫手:

<%= link_to "Foobar", custom_show_path(:id=>1234, :param=>'my_param') %> 
+0

我已經看到了這樣的文檔,但我似乎無法得到它的工作...我收到'未定義的方法'custom_show_path'' – arcyqwerty 2012-08-02 17:57:59

+0

資源下有這條路線是否打破了這個功能? – arcyqwerty 2012-08-02 17:58:53

+0

運行'rake routes'並查看輸出。也許你可以在那裏找到它? – Wukerplank 2012-08-02 17:59:23