1
我很新的Rails,我卡住得到一個命名路由正常工作。有很多類似的問題,但我認爲我有一個不同的問題。這是我第一次使用帶參數的命名路線。Rails 3命名路由 - 無路由匹配
首先,這是Rails 3.0.9。我有在routes.rb中的條目:
get '/tasklist/:id' => 'projects#task_list'
運行rake路線顯示線條:
GET /tasklist/:id(.:format) {:controller=>"projects", :action=>"task_list"}
我的觀點有以下代碼:
<%= link_to image_tag("icons/add.png"), tasklist_path, :id => project.id %>
但顯示時查看顯示錯誤:
No route matches {:controller=>"projects", :action=>"task_list"}
...
Extracted source (around line #39):
39: <td><%= link_to image_tag("icons/add.png"), tasklist_path, :id => project.id %></td>
我只是看不到問題出在哪裏。請注意,訪問URL http://localhost:3000/tasklist/2看起來工作得很好。有任何想法嗎?
哦,它應該是'tasklist_path(project.id)'。您將路由定義爲需要:id,並且不會將它傳遞給路徑幫助程序 – dogenpunk
好的 - 剛剛進行了此操作:<%= link_to image_tag(「icons/add.png」),tasklist_path,:id => project.id,:as =>「tasklist」%> - 但不幸的是我仍然得到相同的錯誤 – asc99c
我試圖把id放入tasklist_path,但是這給了我一個不同的錯誤 - format => 1 ??:沒有路由匹配{:controller =>「projects」,:action =>「task_list」,:format => 1} – asc99c