【发布时间】:2012-02-03 23:49:10
【问题描述】:
我有这样的动作:
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 时,不会显示任何错误。当我使用该框进行提交时,未显示任何错误。当我在没有选中该框的情况下进行第一次提交时,会显示错误,但是当我再次提交并且未选中该复选框时出现问题,错误仍然存在。
我的问题是:
- 为什么会这样?
- 如果表单未附加到模型并且必须在用户提交表单时才显示错误,那么处理这种情况的更好方法是什么?
【问题讨论】:
标签: ruby-on-rails forms validation