2011-03-23 23 views
7

Sé que esta pregunta surge mucho con Rails, pero parece que no puedo obtener ninguna de las respuestas anteriores que funcionen para mí.Rails no coincide la ruta con los recursos anidados

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

Estoy recibiendo el siguiente error de enrutamiento:

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} 

Estoy tratando de obtener la ruta así:

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

Cuando corro rutas rastrillo que demuestra que tengo el camino:

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

Cualquier idea wh y recibo este error? ¡Gracias!

+0

¿puedes confirmar que @issue no es nulo? –

+0

http://stackoverflow.com/questions/8406654/no-route-matches-with-nested-resources esta es la respuesta a su pregunta –

Respuesta

15

Try matter_issues_path (@matter, @issue)

que siempre parecen correr en estas trampas de pluralización con rieles de enrutamiento.

+1

Ese fue el problema. ¡Gracias! No puedo creer que haya perdido una hora en eso. – Scott

+0

Resolvió mi problema, aunque me pareció un poco raro que las rutas de rake lo muestren como asunto_y que se agreguen, pero bueno – MexicanHacker

+1

Me salvaste de lo que sin duda habría sido otra hora de frustración, y aprendí algo No sabía antes (que tienes que pasar los parámetros apropiados a esos caminos cuando sea necesario). ¡Gracias! – peelman

Cuestiones relacionadas