2011-03-23 50 views
7

我知道這個問題出現了很多與Rails,但我似乎無法得到任何以前的答案爲我工作。Rails沒有路由與嵌套資源匹配

MyApplication::Application.routes.draw do 
    resources :matters do 
    resources :issues 
    end 

我收到以下錯誤路由:

No route matches {:action=>"show", :controller=>"issues", :matter_id=>#<Matter id: 2, name: "Wilson", user_id: nil, created_at: "2011-03-23 18:19:40", updated_at: "2011-03-23 18:19:40">, :id=>nil} 

我試圖得到這樣的路徑:

<%= link_to issue.content, matter_issue_path(@matter, @issue) %> 

當我運行耙路線那就說明我有路徑:

matter_issues GET /matters/:matter_id/issues(.:format) {:action=>"index", :controller=>"issues"} 

任何想法wh我收到這個錯誤?謝謝!

+0

你能確認@issue不是零嗎? – 2011-03-23 19:16:29

+0

http://stackoverflow.com/questions/8406654/no-route-matches-with-nested-resources 這就是你的問題的答案 – 2014-01-30 13:51:54

回答

15

嘗試matter_issues_path(@matter,@issue)

我似乎總是遇到使用Rails路由這些多元化陷阱。

+1

這就是問題所在。謝謝!不能相信我浪費了一個小時。 – Scott 2011-03-23 19:56:23

+0

解決了我的問題,雖然看起來有點奇怪,耙路線顯示它爲matter_issue和s需要添加,但哦哦 – MexicanHacker 2012-02-04 01:39:21

+1

你剛剛救了我,肯定會是一個小時的挫折,我學到了東西之前我不知道(必要時必須將適當的參數傳遞給這些路徑)。謝謝! – peelman 2012-05-16 20:31:11