0
我想弄清楚爲什麼我的link_to不工作,我以爲會這樣。在我的申請中,我有一個獎品數據庫。當用戶點擊link_to時,控制器應該訪問選擇的動作(在本例中爲「result1」),並在結果頁面視圖上執行動作的方法。從測試看來,link_to完全忽略:action =>'result1',並且默認使用Show方法。Link_to:動作將不會調用控制器方法 - Rails 4
任何想法爲什麼link_to完全忽略了:action =>'result1'?
首先查看:視圖/啓動/ start.html.erb視圖:
<%=link_to 'result', resultpage_path, :controller => 'resultpage', :action => 'result1', :class => 'btn btn-default'%>
Resultpage控制器:控制器/ resultpage_controller.rb
class ResultpageController < ApplicationController
def index
end
# regardless of what is in the :action =>, the controller always calls Show.
def show
@prize = Prize.first
render :index
end
# if i make the :action => 'result1', the controller still calls Show.
def result1
@prize = Prize.last
render :index
end
結果視圖: resultspage /index.html.erb
<h2><%= @prize.title %></h2>
<p><%= @prize.description %></p>
條
路線:
resources :resultpage do
get 'index'
get 'show'
end
resources :prizes