2016-12-07 10 views
0

Я использую Rails 5. У меня возникли проблемы со ссылкой на метод show в моем контроллере. Я это определено в моей конфигурации/маршрутовКак мне получить ссылку link_to на мой метод показа?

resources :scenarios do 
    resources :confidential_memos 
    end 

и в свете, я ставлю этот

<td><%= link_to "#{subscription.scenario.title}", scenarios_path(subscription.scenario) %> 

в мой контроллер у меня есть метод показа

class ScenariosController < ApplicationController 

    def show 
    @scenario = Scenario.find(params[:id]) 
    end 

, но когда я нажимаю по ссылке, я получаю ошибку

The action 'index' could not be found for ScenariosController 

Как получить мою ссылку, чтобы перейти к моему действию на шоу?

+0

попытка scenario_path (в единственном числе) – Brad

ответ

1

scenarios_path использует множественные «сценарии», поэтому он ищет несколько сценариев и отображает действие index, следовательно, ваша ошибка. Для того, чтобы показать один сценарий нужно использовать в единственном числе:

scenario_path(subscription.scenario) 

Если у вас есть только show действие, то вы можете быть явным в маршрутах:

resources :scenarios, :only => %i[ show ] do 
    #... 
end 

так, что вы поймать ошибку рано.

Вы могли бы решить эту проблему самостоятельно, выполнив rake routes и ищет шоу действий, которые вы заинтересованы в.

 Смежные вопросы

  • Нет связанных вопросов^_^