有没有办法检测表单是否提交?我试图根据自定义验证设置一个类,如下例所示,这可能吗?
.control-group{ :class => ("error" if form_is_submitted ) }
现在尝试:
.control-group{ :class => ("error" if params[:user][:profile_attributes][:gender] == nil) }
如果未提交表单,则会失败,因为参数为 nill 并引发错误
有没有办法检测表单是否提交?我试图根据自定义验证设置一个类,如下例所示,这可能吗?
.control-group{ :class => ("error" if form_is_submitted ) }
现在尝试:
.control-group{ :class => ("error" if params[:user][:profile_attributes][:gender] == nil) }
如果未提交表单,则会失败,因为参数为 nill 并引发错误
如果您的表单数据是通过具有(都具有前缀)name
等属性的字段提交的,您可以检查是否存在于.user[profile_attributes][gender]
user
:user
params
... if params.include?(:user)
如果出于某种原因(例如来自路由) params[:user]
即使对于请求也已经有了值GET
,您可以查找具有值的特定表单字段。例如,您可以添加一个隐藏字段
<%= f.hidden_field :some_field, :value => true %>
并在您的情况下检查它
... if params[:user].include?(:some_field)
您也可以检查请求是否通过该POST
方法
... if request.post?
这也适用于其他方法,例如request.put?
更新方法。