繁体   English   中英

ActionController :: UnfilteredParameters(无法将未经许可的参数转换为哈希) - Rails 5

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

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

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(无法将未经许可的参数转换为哈希)

鉴于我已经允许我的用户模型的属性,不知道如何解决这个问题。

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

我知道允许这些属性对Rails 4有用,不知道为什么它不适用于Rails 5.我是否还需要在我的模型上做任何事情?

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

所以改变这个:

def register
  ap params
end

对此:

def register
  ap user_params
end

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM