我正在尝试使用带有Devise的client_side_validations gem来验证设计注册表单。
验证可以正常使用其他所有内容,而不是Devise生成的表单。
我添加了相关内容:validate =>是的,但验证只有在我点击提示不在选项卡上时才有效,就像在其他表格上一样。
<h2>Sign up</h2>
<hr />
<%= form_for(resource, :validate => true, :as => resource_name, :url => registration_path(resource_name)) do |f| %>
<%= devise_error_messages! %>
<div><%= f.label :username %>
<%= f.text_field :username %></div>
<div><%= f.label :email %>
<%= f.email_field :email %></div>
<div><%= f.label :password %>
<%= f.password_field :password %></div>
<div><%= f.label :password_confirmation %>
<%= f.password_field :password_confirmation %></div>
<br />
<div><%= f.submit "Sign up", :class => "btn btn-primary btn-large" %></div>
<% end %>
<%= render "links" %>
答案 0 :(得分:4)
Argc,argv!我正在使用Rails 3.2.1,宝石的最新版本与3.2不相容,因此是噩梦。使用3.2.0.beta.2修复了这些问题。谢谢!
答案 1 :(得分:3)
尝试输入:validates =&gt;在您的字段上直接为true,如下所示:
<h2>Sign up</h2>
<hr />
<%= form_for(resource, :as => resource_name, :url => registration_path(resource_name)) do |f| %>
<%= devise_error_messages! %>
<div>
<%= f.label :username %>
<%= f.text_field :username, :validate => true %>
</div>
<div>
<%= f.label :email %>
<%= f.email_field :email, :validate => true %>
</div>
<div>
<%= f.label :password %>
<%= f.password_field :password, :validate => true %>
</div>
<div>
<%= f.label :password_confirmation %>
<%= f.password_field :password_confirmation, :validate => true %>
</div>
<br />
<div>
<%= f.submit "Sign up", :class => "btn btn-primary btn-large" %>
</div>
<% end %>
<%= render "links" %>
答案 2 :(得分:2)
更改行
<%= form_for(resource, :as => resource_name, :url => registration_path(resource_name)) do |f| %>
到
<%= form_for(@user, :url => registration_path(resource_name), :validate => true) do |f| %>
答案 3 :(得分:1)
我还没有广泛使用过client_side_validations gem。但从它的外观来看,它需要在表单(和表单元素)标签中使用data-validate =“true”。
您是否在输出html表单中找到它,如:
<form novalidate="novalidate" method="post" data-validate="true" action="/some_actions" >
如果找不到,可能需要像这样编写form_for:
<%= form_for(resource, :as => resource_name, :url => registration_path(resource_name), {:validate => true}) do |f| %>
有帮助吗?
答案 4 :(得分:0)
要使用稳定版本,请使用支持rails 3.2.x的最新稳定版3.0.3