新添加的列数据未保存到DB

我在我的Rails 4应用程序中使用Devise进行用户身份validation。 最近我在User模型中添加了两个新列。 它们是first_namelast_name. 然后,我使用这两个属性的字段更新了登录表单。 但是,在测试创建新用户时,两者都没有保存到数据库中。 我认为这可能是一个质量分配问题,但我没有得到任何类型的数据库错误。 用户已成功创建,但仅存储原始属性(email,password和password_confirmation)。 有人可以帮忙吗?

这是我的表单的代码:

 
resource_name, :url => registration_path(resource_name)) do |f| %>

从控制台显示我的模型信息,显示已添加属性:

 User(id: integer, email: string, encrypted_password: string, reset_password_token: string, reset_password_sent_at: datetime, remember_created_at: datetime, sign_in_count: integer, current_sign_in_at: datetime, last_sign_in_at: datetime, current_sign_in_ip: string, last_sign_in_ip: string, created_at: datetime, updated_at: datetime, first_name: string, last_name: string) 

根据Rails 4的强参数,您需要让设计知道现在允许这些新参数。 您可以将以下内容添加到应用程序控制器:

 class ApplicationController < ActionController::Base before_action :configure_permitted_parameters, if: :devise_controller? protected def configure_permitted_parameters devise_parameter_sanitizer.for(:sign_up) << :first_name << :last_name end end 

有关通过设计使用Rail 4的强参数的更多信息,请参阅Devise README的Strong Parameters部分。