Ruby on rails 如何修改会话控制器以使用可锁定策略?

Ruby on rails 如何修改会话控制器以使用可锁定策略?,ruby-on-rails,devise,Ruby On Rails,Devise,我创建了会话控制器,下面就是 我已经在模型中添加了可锁定策略,并运行了railsdb:migrate 我想在不使用warden.authenticate的情况下更新失败的尝试 我阅读了Desive文档、可锁定策略,并发现该方法对认证有效 如何使用有效的\u进行\u身份验证? 如果是nil,我只是跳过登录,但我想更新失败的尝试。我错过了什么方法 def create @user = User.authenticate(params[:user][:email], params[:user]

我创建了会话控制器,下面就是

我已经在模型中添加了可锁定策略,并运行了
railsdb:migrate

我想在不使用
warden.authenticate的情况下更新失败的尝试
我阅读了Desive文档、可锁定策略,并发现该方法对认证有效

如何使用有效的\u进行\u身份验证? 如果是nil,我只是跳过登录,但我想更新失败的尝试。我错过了什么方法

 def create
   @user = User.authenticate(params[:user][:email], params[:user][:password])
   sign_in(:user, @user) if @user&.valid_for_authentication?
   redirect_to root_path
end

嗯,我刚刚筛选了相关的来源。据我所知,使用
@user&.valid\u进行身份验证?
将增加
失败的\u尝试次数
计数器,并在超过登录尝试次数时锁定帐户。所以这应该是开箱即用的。如果您想测试它,我建议使用
rails控制台

是的,它必须这样做,但不会发生任何事情,因为用户在传递错误的pwd或电子邮件时为零