2012-05-24 37 views
1

我已經看到類似於這個問題的事情,但不完全是我正在尋找的東西。我在嘗試之前嘗試在別處找到它。話雖如此。用戶下拉選擇排序Ruby on Rails索引

我正在創建我的第一個Rails應用程序。我會舉一個簡單的例子來證明我的問題:

假設我有模型Employees。

每個員工都有一個姓名和一個職位。

當我導航到localhost/Employees/index時,我會得到一個員工列表。我希望該索引可以由用戶排序。我希望它有下拉,允許用戶選擇要排序的內容。如果這是PHP,我只需傳遞用戶搜索首選項的參數,然後用不同的'ORDER BY'值重新加載頁面,但我似乎無法弄清楚在rails中如何開始這樣的事情。

由於提前, 瑞恩

回答

1

嘿如果你喜歡JQuery,那麼這種類型的功能是可能的jQuery的工具DataTable的,使您更容易爲您提供更多的功能,併爲索引頁中的表提供良好的CSS。

按照下面的鏈接,解釋如何使用數據表

http://railscasts.com/episodes/340-datatables?view=asciicast

我希望這可以幫助你。
謝謝。

1

PARAMS散列是由形式到控制器,當用戶提交表單通過。一個簡單的方法是編輯搜索字段的單獨表單。 (道歉,如果我的ERB是錯誤的,我通常使用HAML)

你的形式就像這樣。它也修改了URL頭。在您的查找功能

<%= form_tag(params, :method => :get) do %> 
    <%= select_tag(:order_by, options_for_select(SET_OF_ORDERS, params[:order_by])) %> 
    <%= submit_tag "Search with parameters" %> 

然後在你的控制器使用:ORDER_BY參數(PARAMS [ORDER_BY])。

options_for_select是表單助手。

與往常一樣,請確保您清理輸入,因爲用戶可以將任何內容添加到URL請求中,並且您不需要SQL注入。