如何在设计生成的注册表单中添加额外的字段?

时间:2017-06-17 03:21:10

标签: ruby-on-rails ruby devise rubygems

我学习ruby,OOP和Rails。

我的应用程序使用devise gem注册用户。它只提供字段电子邮件,密码和密码确认,但我需要一个额外的字段,电话号码。添加它的正确方法是什么? (不只是在html文件中)

1 个答案:

答案 0 :(得分:3)

1)您需要将额外字段添加到用户模型...

rails g migration AddPhoneNumberToUser phone_number:string

2)在 ApplicationController

中配置强参数
class ApplicationController < ActionController::Base
  before_action :configure_permitted_parameters, if: :devise_controller?

  protected

  def configure_permitted_parameters
    devise_parameter_sanitizer.permit(:sign_up, keys: [:phone_number])
  end
end

注意:如果您已经有自定义控制器,则只需要取消注释(隐藏)RegistrationsController#sign_up_params方法

3)生成设计视图(如果你还没有)

rails generate devise:views

4)在 app / views / devise / registrations / new.html.erb

中添加要填写的额外字段