2011-04-11 55 views
1

我是新的。我有一個郵件控制器和我通過支架創建一個郵件臺導軌,在我的表,我有一列CURRENT_STATUS,我想,當我提交表單 狀態是根據提交按鈕類型設置,我有兩個按鈕,一個是保存並繼續 對於其狀態爲「IN_PROGRESS」,另一個是「草稿保存」爲其狀態保存爲草稿,請幫我,我怎麼辦呢?如何在提交按鈕上調用函數?

回答

1

我不知道,如果你可以指定哪些功能(我假設javascript函數?)你想用Rails的形式生成調用。 Rails很大程度上關聯了一個表單,一個按鈕(並且所有的rails表單似乎都使用了相同的自動生成的表單功能)。

你可能被卡住(如果你只軌),具有下拉菜單或任何決定,如果它是一個保存或繼續。

現在,如果你真的想擁有一個像這樣的條件按鈕,你可能會想從頭開始(使用ajax,javascript,不管),而不是讓rails爲你構建它。當你想要做真正基本的東西時,Rails是相當整潔的......但是整個過程就是關於配置的慣例,所以當你想要變得很花哨時,它會變得非常固執。

編輯:您可以指定要一種形式調用哪個控制器動作,但它仍然是每形成一個控制器。有兩個不同的可能性,你需要有兩種形式(這聽起來並不像你在找什麼?)

1

如果你不想使用JavaScript,你可以這樣做:

表單按鈕:

<div class="action"> 
    <%= submit_tag 'Save', :name => 'save_button' %> 
    <%= submit_tag 'Continue', :name => 'submit' %> 
</div> 

注意每個名字提交按鈕。

在控制器中,也可以單獨引用每個按鈕,例如,

params[:save_button] 
params[:submit] 

然後可以包括在爲每個按鈕創建方法特定的邏輯,也許在如果/ ELSIF/else語句。

相關問題