如何让我的 link_to 转到我的 show 方法?
How do I get my link_to to go to my show method?
我正在使用 Rails 5。我在 link 访问控制器中的显示方法时遇到问题。我在 config/routes
中定义了这个
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
但是当我点击 link 时,出现错误
The action 'index' could not be found for ScenariosController
如何让我的 link 参加我的表演活动?
scenarios_path
使用复数 "scenarios" 所以它正在寻找几个场景并且映射到 index
动作,因此你的错误。要显示单个场景,您将使用单数:
scenario_path(subscription.scenario)
如果您只有 show
操作,那么您可能希望在您的路线中明确:
resources :scenarios, :only => %i[ show ] do
#...
end
以便您更快发现错误。
您可以自己解决这个问题,方法是 rake routes
并寻找您感兴趣的表演动作。
我正在使用 Rails 5。我在 link 访问控制器中的显示方法时遇到问题。我在 config/routes
中定义了这个 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
但是当我点击 link 时,出现错误
The action 'index' could not be found for ScenariosController
如何让我的 link 参加我的表演活动?
scenarios_path
使用复数 "scenarios" 所以它正在寻找几个场景并且映射到 index
动作,因此你的错误。要显示单个场景,您将使用单数:
scenario_path(subscription.scenario)
如果您只有 show
操作,那么您可能希望在您的路线中明确:
resources :scenarios, :only => %i[ show ] do
#...
end
以便您更快发现错误。
您可以自己解决这个问题,方法是 rake routes
并寻找您感兴趣的表演动作。