use*_*621 3 ruby parameters ruby-on-rails devise
我有以下设置:
的routes.rb
devise_for :users, :path_names => { :controllers => {:omniauth_callbacks => "omniauth_callbacks", :registrations => "registrations"}
并且RegistrationController:
class RegistrationsController < Devise::RegistrationsController
  def update
    ...
  end
  def user_params
    params.require(:user).permit(:tw_account, :fb_account, :current_password, :password, :password_confirmation)
  end
end
但每当我尝试更新用户的数据时,我都会收到以下错误消息:
未允许的参数:tw_account,fb_account
但是当我用这两个字段创建一个新帐户时,它们就被保存了下来.如何让它们更新?
谢谢
这对我有用,继承了Devise :: RegistrationsController
class RegistrationsController < Devise::RegistrationsController
  before_filter :configure_permitted_parameters
  def configure_permitted_parameters
    devise_parameter_sanitizer.for(:account_update).push(:tw_account, :fb_account)
  end
end
您还应该从参数中删除current_password,password_confirmation和密码,因为设计已经处理了这些.
| 归档时间: | 
 | 
| 查看次数: | 4935 次 | 
| 最近记录: |