Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Rails no route matches with nested resources

I know this question comes up a lot with Rails, but I can't seem to get any of the previous answers to work for me.

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

I'm getting the following routing error:

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}

I am trying to get the path like this:

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

When I run rake routes it shows that I have the path:

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

Any ideas why I'm getting this error? Thanks!

like image 589
Scott Avatar asked Mar 23 '11 18:03

Scott


1 Answers

Try matter_issues_path(@matter, @issue)

I always seem to run into these pluralization gotchas with Rails routing.

like image 193
Dan Fox Avatar answered Oct 30 '22 09:10

Dan Fox