Ruby on rails 设计不处理消毒参数

Ruby on rails 设计不处理消毒参数,ruby-on-rails,devise,strong-parameters,Ruby On Rails,Devise,Strong Parameters,以下控制台信息 Started POST "/users" for Processing by RegistrationsController#create as HTML Parameters: {"utf8"=>"✓", "authenticity_token"=>"==", "user"=>{[...], "email_contact"=>"5@mail.ne", "cap"=>"", "client_retail"=>"true"}, "comm

以下控制台信息

Started POST "/users" for 
Processing by RegistrationsController#create as HTML
  Parameters: {"utf8"=>"✓", "authenticity_token"=>"==", "user"=>{[...], "email_contact"=>"5@mail.ne", "cap"=>"", "client_retail"=>"true"}, "commit"=>"Register"}
Unpermitted parameters: :email_contact, :client_retail
令人费解的是,这两个未经许可的参数(它们是在原始版本之后创建的,但数据库被删除、重新创建和迁移)被顽固地忽略(在创建用户时)。
UsersController确实包含这些属性

def user_params
  params.require(:user).permit(:email, :password, :password_confirmation, :remember_me, [...] :internal, :client_retail, :email_contact)
end
注册控制员也一样:

private

def sign_up_params
  params.require(:user).permit(:email, :password, :password_confirmation, :remember_me, [...] :internal, :client_retail, :email_contact)
end

def account_update_params
  params.require(:user).permit(:email, :password, :password_confirmation, :remember_me, [...] :internal, :client_retail, :email_contact)
end
此外,ApplicationController调用消毒器

def configure_permitted_parameters
  devise_parameter_sanitizer.permit(:sign_up, keys: [:email, :password, :password_confirmation,  :nome, :cognome, :email_contact, :client_retail])
  devise_parameter_sanitizer.permit(:sign_in, keys: [:login, :password, :password_confirmation])
  devise_parameter_sanitizer.permit(:account_update, keys: [:email, :password, :password_confirmation, :current_password])
end
奇怪的是,这两个属性将在更新操作下得到处理,尽管没有列在消毒液中


如何允许这些参数?

将控制器重命名为
Users::RegistrationsController
RegistrationsController
,具体取决于自定义RegistrationsController的位置。

您的RegistrationsController是这样的吗?类用户::RegistrationsController{:registrations=>“users/registrations”}此路由可能会根据您的自定义注册控制器的位置而改变,路由为
designe_for:users,:controllers=>{注册:'用户/注册',会话:'会话'}
正常函数运行,但调用新注册会返回错误
无法自动加载常量用户::RegistrationController,需要/Volumes/Mor/ph/app/controllers/Users/registrations\u controller.rb来定义它。
控制器在该路径中。@PereJoamartorell我的借口。问题是我的文本edi中的缓存错误tor,调用上一次迭代中不同registrations_controller.rb文件的内容(类似于应用程序的相同名称)。