加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby-on-rails – Rails 3 – Devise:编辑注册时如何跳过’curr

发布时间:2020-12-16 19:55:18 所属栏目:百科 来源:网络整理
导读:我已经用我的设计模型实现了全能,所以我可以使用其他服务进行身份验证. 密码对我的模型不再需要,因为用户可以使用twitter,Facebook …进行身份验证 一切都工作正常,但是当用户尝试编辑其注册时,设计跳过该进程,因为用户没有通知’current_password'(在某些情
我已经用我的设计模型实现了全能,所以我可以使用其他服务进行身份验证.
密码对我的模型不再需要,因为用户可以使用twitter,Facebook …进行身份验证

一切都工作正常,但是当用户尝试编辑其注册时,设计跳过该进程,因为用户没有通知’current_password'(在某些情况下现在不存在).

我创建了一个注册控制器来覆盖其中的一个:

class RegistrationsController < Devise::RegistrationsController
  def update
    super
  end
end

但是我没有找到任何有关如何跳过密码验证的文档,我该如何在我的更新操作中执行?

解决方法

与以上类似,请尝试将其放在您的用户模型中:
# bypasses Devise's requirement to re-enter current password to edit
def update_with_password(params={}) 
  if params[:password].blank? 
    params.delete(:password) 
    params.delete(:password_confirmation) if params[:password_confirmation].blank? 
  end 
  update_attributes(params) 
end

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读