2016-03-03 67 views
0
class UsersController < ApplicationController 
def newpass 
    @somevariable = { 
         "a-var" => params[:token_id], 
         "b-var" => params[:client_id], 
         "c-var" => params[:user_id]} 
end 
def setpass 
    #I need to access this hash values without params getting reset 
end 

訪問PARAMS散列wihtout復位

我有一個動作newpass與調用SETPASS的相應視圖。我在newpass action中訪問URL的參數。我想在setpass中使用這些參數值,但值會重置。

回答

0

使用鏈接:

您需要的時候你的要求擊中在UsersControllersetpass行動派這些值。您可以創建一個按鈕,或沿params值發送一個link_to。這裏是如何:

<%= link_to "Go to", setpass_path(token_id: params[:token_id]) %> 

可以在_path方法傳遞params,並且您將收到控制器各自的方法中的所有這些值。

使用形式:

如果您使用的是形式,你想一起發送這些值,hidden_field_tag是這裏最好的選擇。你可以做這樣的事情:

<%= hidden_field_tag :token_id, params[:token_id] # this line must exist inside your form element %> 
+0

其實我提交表單,以SETPASS行動的form_tag(「SETPASS」,方法:「打補丁」,「數據類型」 =>「應用/ JSON」)。我應該怎麼做? –

+0

感謝您的建議。它爲我工作。 –