ActionController::UnfilteredParameters(无法将不允许的参数转换为散列)- Rails 5

ActionController::UnfilteredParameters (unable to convert unpermitted parameters to hash) - Rails 5

我有这个错误,但不太确定如何解决它。我有一个 API 版本模块 VI,我的用户控制器模块是这样的

class Api::V1::UsersController < ApplicationController
  def register
    ap params
  end

  def user_params
    params.require(:user).permit(
      :email, :password,:password_confirmation, :username, :name, :fb_id, :picture, :access_token, :reset_password_token,
      :sign_in_count, :authenticatable_salt, :current_sign_in_at, :last_sign_in_at, :current_sign_in_ip, :last_sign_in_ip
    )
  end
end

我有一个注册函数,每次我想记录参数时,我都会得到一个错误

ActionController::UnfilteredParameters (unable to convert unpermitted parameters to hash)

不确定如何解决这个问题,因为我已经允许了我的用户模型的属性。

我没有包含 gem strong_parameters 但不确定是否必须包含它,因为我认为我不必包含它。

我知道允许这些属性对 Rails 4 不确定为什么它对 Rails 不起作用 5. 我还需要对我的模型做任何事情吗?

您创建了方法 user_params,但在 register 操作中您使用的是 params(即未过滤的参数)。

所以改变这个:

def register
  ap params
end

对此:

def register
  ap user_params
end