我正在努力让我的设计为我的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
,它可以正常工作并创建一个包含所有数据的新用户。
如果您有任何想法,请告诉我,谢谢
答案 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