Authentication 使用其他字段而不是电子邮件字段设计身份验证

Authentication 使用其他字段而不是电子邮件字段设计身份验证,authentication,devise,Authentication,Devise,我试图在designe.rb中设置config.authentication\u keys=[:actor\u id], 这是我的表格: <%= form_for(resource, :as => resource_name, :url => registration_path(resource_name)) do |f| %> <%= devise_error_messages! %> <div><%= f.label :na

我试图在designe.rb中设置config.authentication\u keys=[:actor\u id], 这是我的表格:

<%= form_for(resource, :as => resource_name, :url => registration_path(resource_name)) do |f| %>
  <%= devise_error_messages! %>

    <div><%= f.label :name %><br />
  <%= f.text_field :name %></div>
  <div><%= f.label :serial_number %><br />
  <%= f.text_field :serial_number %></div>
  <div><%= f.label :email %><br />
  <%= f.text_field :email %></div>

  <div><%= f.label :password %><br />
  <%= f.password_field :password %></div>

  <div><%= f.label :password_confirmation %><br />
  <%= f.password_field :password_confirmation %></div>

  <div><%= f.submit "Sign up" %></div>
<% end %>
我尝试将电子邮件重命名为电子邮件,它抛出以下错误:

Can't mass-assign protected attributes: email
undefined method `downcase!' for 1:Fixnum

我做错了什么?

您需要将此添加到您的用户模型中:

attr_accessible :email
检查此Railscast并了解:)


模型用户没有此属性,我尝试将其删除。