2016-09-01 53 views
0

我想使用link_to傳遞參數。 (我也想使用引導選項卡)如何使用link_to傳遞參數?

ilban.html.erb

<%= link_to '일반공지', '#home', { 'data-toggle' => 'tab', 'aria-controls'=>'home', 'role'=>'tab', :where => 1 } %> 

cpu_controller.rb

@where = params[:where] 

此代碼沒有得到where作爲參數。我該如何解決它?

回答

2

我沒有測試過它,但它應該通過你想要的參數。

link_to "Search", searches_path(:where => 1, :when => "Today"), { 'data-toggle' => 'tab', 'aria-controls'=>'home', 'role'=>'tab' } 

控制器:

@where = params[:where] 
+0

我想要使用這種形狀的網址:'#home'。它指的是div的具體ID,我不知道如何將此url轉換爲searching_path形狀。 –

+0

@김혜진到目前爲止,如果你想發送params到控制器你必須調用特定的路由。你可以看到終端'耙路線'中的所有路線。使用'#'哈希標記並向控制器發送它不可能。散列標籤用於發送頁面的特定內容。 – 7urkm3n

0

在Rails 5,試試這個語法link_to

link_to 'Show', view_path(:id => view.id), { 'data-toggle' => 'tab', 'aria-controls'=>'home', 'role'=>'tab' } 

在的地方,你可以用你controller path編輯,並通過有效的id你需要鏈接。

或者,試試這個語法也通過PARAMS

<%= link_to "Add car", {:controller => "car", :action => "add_car", :car => car.id }%> 

,並添加您的控制器

@car = Car.find(PARAMS [:汽車])

+0

1.不是'Rails 5'特定的語法。 2.在你的例子中使用了古老的ruby語法。3.這種方法通常不被建議,因爲rails可以改變模型的'to_param'方法並且具有別的成員路徑標識(如名稱或隨機數)。將它編碼爲'id'會使其更難改變。相反,像'view_path(view)'而不是'view_path(:id => view.id)傳遞完整的對象' – Kkulikovskis

+0

我想使用這種形狀的網址:'#home'。它引用div的具體ID,我不知道如何將此url轉換爲searching_path形狀.. –