繁体   English   中英

Ruby on Rails:设计gem,为用户模型添加“名称”

[英]Ruby on Rails: Devise gem, adding a “name” to a User model

所以我有devise的原始版本,其中通过用户的电子邮件地址对用户进行身份验证。 但是,我想为用户添加一个输入他们的名字的选项,如果名字不是唯一的,那当然没关系,它只是出于显示目的; 如何自定义设计表格? 我的用户模型中已经有一个:name属性,如下所示:

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

      # This field not working
      <div class="field">
        <%= f.text_field :name, autofocus: true, placeholder: "What is your nickname?" %>
      </div>


      <div class="field">
        <%= f.email_field :email, placeholder: "Enter your email address" %>
      </div>

      <div class="field">
        <%= f.password_field :password, autocomplete: "off",
            placeholder: "Enter your password" %>
      </div>

      <div class="field">
        <%= f.password_field :password_confirmation, autocomplete: "off",
            placeholder: "Confirm your password" %>
      </div>

      <div class="actions">
        <%= f.submit "Sign up" %>
      </div>
    <% end %>

我要去哪里错了? 用户注册时,名称显示为空白,并且未注册到数据库中。

我认为您的问题与“ 强参数”有关 将此添加到您的ApplicationController

class ApplicationController < ActionController::Base
  before_action :configure_permitted_parameters, if: :devise_controller?

  protected

  def configure_permitted_parameters
    devise_parameter_sanitizer.for(:sign_up) << :user
  end
end

资料来源: https : //github.com/plataformatec/devise#strong-parameters

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM