Всякий раз, когда я использую 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''s? Кроме того, в вашем действии 'show' вам нужно получить свой' @ mediumable' из 'job_id' в пути. – Vidya