Ruby on rails 使用Desive时堆栈级别太深

Ruby on rails 使用Desive时堆栈级别太深,ruby-on-rails,ruby,devise,Ruby On Rails,Ruby,Devise,我最近一直在使用Desive进行用户帐户更新,我试图做的是允许更新所需的参数。我之前是通过允许如下参数来注册的: #application_controller.rb def configure_permitted_parameters devise_parameter_sanitizer.for(:sign_up) << :nombre << :apellido end #应用程序_controller.rb def配置\u允许的\u参数 设计参数消

我最近一直在使用Desive进行用户帐户更新,我试图做的是允许更新所需的参数。我之前是通过允许如下参数来注册的:

#application_controller.rb
def configure_permitted_parameters
     devise_parameter_sanitizer.for(:sign_up) << :nombre << :apellido
    end
#应用程序_controller.rb
def配置\u允许的\u参数

设计参数消毒剂。对于(:注册)此代码位是导致
堆栈级别太深错误的代码位

def params
  params.require(:user).permit({:fecha_nacimiento=>[]},:nombre,:apellido,:ciudad_id,:foto,:genero,:estatura)
end
只要在方法本身内部使用方法名称,就可以使方法递归地调用自己,直到。。。繁荣重命名方法名称:

def update_params
  params.require(:user).permit({:fecha_nacimiento=>[]},:nombre,:apellido,:ciudad_id,:foto,:genero,:estatura)
end

你应该没事。

我真不敢相信这件事这么容易解决。。。非常感谢,我为此奋斗了好几天,你救了我的命:D
def params
  params.require(:user).permit({:fecha_nacimiento=>[]},:nombre,:apellido,:ciudad_id,:foto,:genero,:estatura)
end
def update_params
  params.require(:user).permit({:fecha_nacimiento=>[]},:nombre,:apellido,:ciudad_id,:foto,:genero,:estatura)
end