Rails应用程序无法识别现场验收

时间:2012-11-07 01:10:56

标签: ruby-on-rails-3

  

可能重复:
  Validates acceptance always failing

我在Rails 3.2应用中使用了Simple FormDevise宝石。在用户注册视图中,我添加了一个复选框,供用户检查是否同意应用程序的使用条款。但是,现在,即使在检查时,代码也没有意识到它已被检查,因此它给出了错误消息,即不接受此必填字段。

这可能与我根据此question在表单中实施content_for代码有关。

用户模型:

class User < ActiveRecord::Base
  devise :database_authenticatable, :registerable,
     :recoverable, :rememberable, :trackable, :validatable, :omniauthable

  validates :agree_to_terms, :acceptance => true
end

观点:

<%= content_for(:the_links) do %>
  I agree to the <%= link_to "Terms of Service", terms_path,:remote => true %> 
  and <%=link_to "Privacy Policy", privacy_path, :remote => true%>
<% end %>

<%= simple_form_for(resource, :as => resource_name, :url => registration_path(resource_name)) do |f| %>
  <%= f.input :agree_to_terms, :as => :boolean, :inline_label => content_for(:the_links), :label => false %>
  <%= f.button :submit, "Sign up", :class =>"btn btn-success btn-large" %>
<% end %>

<%= render "devise/shared/links" %>

0 个答案:

没有答案