添加名字和姓氏来设计注册表单

时间:2013-12-12 21:20:27

标签: devise ruby-on-rails-4

我正在使用Rails 4,我正在尝试将名字姓氏字段添加到注册过程中。我正在使用Devise来处理身份验证。

我已通过迁移将first_name和last_name列添加到我的用户模型中。我还在application_controller.rb文件中添加了以下内容:

before_filter :configure_permitted_parameters, if: :devise_controller?

protected

def configure_permitted_parameters
  devise_parameter_sanitizer.for(:sign_up) { |u| u.permit(:first_name, :last_name, :email, :password, :password_confirmation, :remember_me) }
  devise_parameter_sanitizer.for(:sign_in) { |u| u.permit(:email, :password, :remember_me) }
  devise_parameter_sanitizer.for(:account_update) { |u| u.permit(:first_name, :last_name, :email, :password, :password_confirmation, :current_password) }
end

但是,当我注册时,first_name和last_name字段可以留空,即使填充它们,值也不会保存到用户对象。

我怎么能:

  1. 强制注册时需要这些字段?我尝试将'validates_presence_of:first_name,:last_name,:email'添加到用户模型但必须将其删除,因为表单由于某种原因始终认为first_name和last_name字段为空。
  2. 更新设计创建操作,以便保存通过devise / registrations / new.html.erb文件传入的值?
  3. 我有一个我希望与此用户关联的Person模型(关联已成功创建,我有表单编辑人员和用户字段,但不知道如何将其构建到设计注册过程中。
  4. 任何帮助都将不胜感激。