2011-03-03 74 views
0

假設我有一個產品模型,並且用戶在組合框中選擇了它的類別。該類別只有一個字段,名稱。 我想在這個組合旁邊有一個「添加」按鈕,讓用戶只需在javascript提示對話框中輸入其名稱即可添加另一個類別,因此該類別被插入到數據庫中,並且組合更新。Rails - 從javascript提示創建記錄

達到此目的的最佳方法是什麼?

謝謝!

+0

看看這裏遠程窗體:http://www.alfajango.com/blog/rails-3-remote-links-and-forms/ – apneadiving 2011-03-03 17:02:46

+0

感謝您的鏈接,偉大的文章。但我仍然不確定如何將類別插入數據庫,並通過單擊產品表單中的按鈕來更新組合。我錯過了什麼 ? – Brian 2011-03-03 17:57:19

回答

0

所以這就是我從問題的理解..你想在你的表中創建一個記錄時,使用點擊添加按鈕。記錄的值應該是用戶在提示對話框中提供的名稱。

你可以這樣做,如果你使用jQuery的,大概是這樣做到這一點。當用戶輸入名稱

1)做一個AJAX調用服務器端..

$.post("yourcontroller/yourmethod", { name: "value given by user in the prompt"}, function(data) { 
     //this is where you update the combo 
    }); 

2)聲明在config/routes.rb中yourcontroller/yourmethod路線..

3)定義在控制器yourmethod其內容PARAMS [:名字],並根據您正在使用的ORM會在創紀錄表。如果你使用Sequel ORM,你可能會這樣做。

YourTable.create(
    :name => params[:name] 
) 

那應該在你的表中創建一條記錄。