不能引用ActionController :: Parameters

时间:2017-11-01 22:35:58

标签: ruby ruby-on-rails-4

我在控制器中有以下索引操作

  def index
    details = CustomerInfo.current
                          .for_user(params[:user])
                          .for_product(params[:product])
                          .for_area(params[:area])
                          .where(value: params.permit(:value))
    render(json: details)
  end

当我在where添加许可时,我开始在can't quote ActionController::Parameters收到错误render(json: details) 但如果我不使用许可.where(value: params[:value]),它就可以了。

1 个答案:

答案 0 :(得分:0)

我不认为您正在使用许可证,因为它打算使用。

params.permit返回ActionController::Parameters的实例,因此会出现错误。有关代码,请参阅here

permit应该用于限制可以通过质量分配更新的属性。

以下是相关文档:https://apidock.com/rails/ActionController/Parameters/permit http://guides.rubyonrails.org/action_controller_overview.html#strong-parameters