2016-12-07 4 views
0

私はRails 5を使用しています。コントローラのshowメソッドにリンクする際に問題があります。私はこの私の設定/ルート link_toを私のshowメソッドに移動するにはどうすればいいですか?

resources :scenarios do 
    resources :confidential_memos 
    end 

で、ビューに定義されている、私はshowメソッド

class ScenariosController < ApplicationController 

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

を持って私のコントローラでこの

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

を置くが、私はクリックしたときリンク上でエラーが発生する

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をやって、あなたが興味showアクションを探して、この自分で解決することができます。

関連する問題