用巫术重置密码允许不匹配的确认
Resetting password with sorcery allows non-matching confirmation
我正在按照 sorcery tutorial 重置密码。我发现代码有效,即使我的密码确认不同。我的用户模型
有 attr_accessor :password, :password_confirmation
.
相关代码来自 app/controllers/password_resets_controller.rb
的更新操作,即
@user.password_confirmation = params[:user][:password_confirmation]
if @user.change_password!(params[:user][:password])
redirect_to(root_path, :notice => 'Password was successfully updated.')
使用 pry 可以确认 @user.password_confirmation
returns 'reallywrong' 和 (params[:user][:password]
returns 'foobar',所以确认与密码,但 @user.change_password!(params[:user][:password])
returns true.
这里有什么问题?
我没有在用户模型验证中将密码确认设置为 true。
我正在按照 sorcery tutorial 重置密码。我发现代码有效,即使我的密码确认不同。我的用户模型
有 attr_accessor :password, :password_confirmation
.
相关代码来自 app/controllers/password_resets_controller.rb
的更新操作,即
@user.password_confirmation = params[:user][:password_confirmation]
if @user.change_password!(params[:user][:password])
redirect_to(root_path, :notice => 'Password was successfully updated.')
使用 pry 可以确认 @user.password_confirmation
returns 'reallywrong' 和 (params[:user][:password]
returns 'foobar',所以确认与密码,但 @user.change_password!(params[:user][:password])
returns true.
这里有什么问题?
我没有在用户模型验证中将密码确认设置为 true。