【发布时间】:2015-07-23 13:15:27
【问题描述】:
我希望用户在编辑他们的个人资料时输入他们当前的密码。
这是我的用户模型的样子:
attr_accessor :current_password
def current_password
errors[:current_password] << 'Incorrect password' unless self.current_password == self.password
end
validate :current_password, on: :update
还有我的控制器参数:
def user_params
params.require(:user).permit(:email, :name, :current_password, :password, :password_confirmation, :phone)
end
和用户表单部分:
<div class="form-group">
<%= f.label :password, "Current password" %>
<%= f.password_field :current_password, class: "form-control", placeholder: "Current password" %>
</div>
但我的堆栈级别太深,它进入了验证循环。
我做错了什么?
【问题讨论】:
标签: ruby-on-rails ruby validation ruby-on-rails-4 grails-validation