[英]show DEVISE authentication key (email Address ) during password reset
[英]Optional password during authentication with Devise
如果我有Rails应用程序,并且想通过Devise添加身份验证,那么我该如何允许数据库中具有空密码的用户登录而不使用它?
我有兴趣听取有关生命周期的答案以及完成该过程必须编写的文件。
步骤1:允许保存记录。
步骤2:登录记录
要保存记录,您需要自己进行验证。 我在这里介绍如何进行自定义验证: http : //jessewolgamott.com/blog/2011/12/08/the-one-where-devise-validations-are-customized/ ....在您的情况下,您将想要删除密码验证。
要登录记录,您需要有一个自定义登录路径。 您可以覆盖devise会话控制器,但这可以解决问题:
class SessionsController < ApplicationController
def create
user = User.find_by_email!(params[:session][:email])
sign_in user
redirect_to root_path
end
end
事实证明,Devise建立在Warden上。 这意味着我只需要创建自己的自定义Warden策略:
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.