【问题标题】:not able to pass devise form parameter to database无法将设计表单参数传递给数据库
【发布时间】:2020-01-16 05:11:27
【问题描述】:

我正在使用 devise gem 并在用户表中创建了一个名称列。但我无法将名称参数传递给数据库。我对表单进行了更改我需要做哪些更改才能将表单数据传递到数据库?

sign_up.html.erb

    <div class="field">
      <%= f.label :name %><br />
      <%= f.text_field :name %>
    </div>

    <div class="field">
      <%= f.label :email %><br />
      <%= f.email_field :email, autofocus: true, autocomplete: "email" %>
    </div>

我能够将密码和电子邮件传递到数据库中。

【问题讨论】:

    标签: ruby-on-rails devise ruby-on-rails-5


    【解决方案1】:

    您需要将该参数列入白名单以进行设计。

    将此添加到您的application_controller.rb

    before_action :configure_permitted_parameters, if: :devise_controller?
    
    ...
    
    protected
    
    def configure_permitted_parameters
      devise_parameter_sanitizer.permit(:sign_up, keys: [:name])
      devise_parameter_sanitizer.permit(:account_update, keys: [:name])
    end
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-06-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多