0

我是Ruby on Rails的新手。我有一個'狀態'表。我有一個觀點(比如視圖1)列出一個國家的所有州。當用戶點擊一個州名時,他/她將被帶到另一個視圖(比如視圖2),並顯示所選狀態的詳細信息。我想使用find方法。但只能將狀態名稱(在視圖1中)鏈接到視圖2. 我是否需要將狀態名稱(從視圖1)傳遞給變量並在第二個視圖中使用該變量,即視圖2?如何在另一個視圖中顯示用戶點擊的值

這是在索引視圖

<% @cds.each do |cd| %> 
<h5><%= link_to cd.name :action=>:lwstlevel%></h5> 

這是控制器。

def index  
    @cds = Cd.all 
    end 

    def lwstlevel    
    @x = Cd.find(params[:name]) 
    end 

這是在lwstlevel視圖

<h2>Welcome to <%= @x.name %> </h> 
<p> <%= @x.dscr %> </p> 

鎘是我的 '狀態' 表。在索引視圖中,如果用戶單擊任何狀態名稱,他必須導航到應顯示該狀態詳細信息的lwstlevel視圖。 希望這可以滿足。我嘗試了幾件事情,但沒有得到預期的結果。

+0

請顯示一些代碼來幫助解釋你想要完成的事情。具體來說,你想要做什麼與視圖2不起作用。 – jdl

+0

請檢查編輯的問題。謝謝 – Varsha

回答

1

變化

<%= link_to cd.name, :action => :lwstlevel %> 

<%= link_to cd.name, :action => :lwstlevel, :id => cd.name %> 

def lwstlevel    
    @x = Cd.find(params[:name]) 
end 

def lwstlevel    
    @x = Cd.find(params[:id]) 
end 

將名稱更改爲id是id是成員操作的默認值,但可以將其保留爲名稱。

+0

我得到這個錯誤:參數的錯誤數目(1代表0)。行ERROR in

<%= link_to cd.title:action =>:lwstlevel,:id => cd。 title%>
Varsha

+0

answer edited。我們錯過了linkt_to cd.title和:action之間的逗號。 –

+0

是的,詹姆斯得到了它。非常感謝 – Varsha

相關問題