0
我有一個這樣的動作:使用相同的操作來處理和接受形式的Rails
def add_credit_card
if request.post?
unless params[:conditions]
flash[:error] = 'You need to accept!'
end
end
end
這個動作呈現以下幾種觀點:
<%= form_tag do %>
<fieldset>
<%= check_box_tag "conditions"%> I agree to the <%= link_to "Terms and Conditions", consumer_terms_and_conditions_url, :target => "_blank" %>
</fieldset>
<%= submit_tag "Submit" %>
<% end %>
當我做一個GET到行動沒有顯示錯誤。當我使用該框進行提交時,沒有顯示錯誤。當我做第一次提交沒有檢查框時顯示錯誤,但是當我做了另一次提交併且複選框未被選中時,問題就出現了,錯誤仍然存在。
我的問題是:
- 這是爲什麼發生?
- 什麼是更好的方法來處理這種情況,一個表格不附加到模型上,並且錯誤必須在用戶提交表單時顯示?
我編輯過。我錯誤地輸入了它,對不起。這不是問題... – Nobita 2012-02-04 00:25:12
啊好吧,我會從我最初的soln中刪除。我添加了另一個可能的soln。 – miked 2012-02-04 00:26:39
我終於嘗試了這一點,問題是閃存散列堅持下一個請求。既然你不重定向,你會想用flash.now – miked 2012-02-04 01:39:46