ruby on rails,设计自定义注册和登录

时间:2017-07-28 04:11:04

标签: ruby-on-rails ruby devise

我正在努力让我的设计为我的rails项目工作。我正在定制视图。我通过以下代码接受并验证了名称字段和电子邮件密码:

在我的配置和初始化程序设计文件

config.authentication_keys = [:name, :email]

并在我的新会话视图中

<div class="field">
   <%= f.label :name %>
   <% if resource.errors.has_key?(:name) %>
     <em><%= resource.errors[:name] %></em>
   <% end %><br />
   <%= f.text_field :name, autocomplete: "off" %>
 </div>

如果我删除名称authentication_key,它永远不会保存名称,所以我将密钥添加到authentication_keys并且有效

但是,登录时我不想对其进行身份验证,只需按名称和密码进行操作

我在做这件事时遇到了问题

我检查了sign_up,它可以正常工作并创建一个包含所有数据的新用户。

如果您有任何想法,请告诉我,谢谢

1 个答案:

答案 0 :(得分:0)

如果您只想使用名称登录,则无需电子邮件即可更改身份验证密钥

  config.authentication_keys = [:name]

附加代码

如果您想在用户sign_up

时添加电子邮件

打开您的应用程序控制器并添加以下代码

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

  protected

  def configure_permitted_parameters
    devise_parameter_sanitizer.permit(:sign_up, keys: [:email])
  end
end
相关问题