每當我使用job_medium_path
我收到此路由錯誤:爲什麼我得到這個路由錯誤?
ActionController::RoutingError Exception: No route matches {:action=>"show", :controller=>"media"}
然而,當我使用rake routes
它清楚地表明,是該路徑的路線:
job_medium GET /jobs/:job_id/media/:id(.:format) {:action=>"show", :controller=>"media"}
此外,在媒體控制器show動作被定義。
其他途徑和路徑,該控制器的工作完美,包括:
job_media GET /jobs/:job_id/media(.:format) {:action=>"index", :controller=>"media"}
new_job_medium GET /jobs/:job_id/media/new(.:format) {:action=>"new", :controller=>"media"}
當我打電話到頁面上的路徑我用:job_medium_path(@mediumable, @media)
和收到此錯誤:
Routing Error
沒有路由匹配{:action =>「show」,:controller =>「media」,:job_id => [所有工作信息都在這裏]}
此處還有以下操作:
def show
@medium = @mediumable.media.find(params[:id])
end
你定義的表演動作你的媒體控制器? – bjhaid
是的,我只是用它更新了這個問題 – Snubber
那麼在你的索引頁上,你的所有'@ mediumable'的值都是?另外,在你的'show'動作中,你需要從路徑中的'job_id'派生'@ mediumable'。 – Vidya