ruby-on-rails - ActionController::UnfilteredParameters - 无法将未经允许的参数转换为散列 - Rails 5.1.6

标签 ruby-on-rails ruby rails-5.1.6

我在以下代码中遇到此错误

link_to params.to_h.merge(query_hash), options do
  raw("#{title} " + fa_icon(icon))
end

为了解决这个问题,我尝试了以下提到的不起作用的方法 here

 request.parameters.merge(query_hash)

还有

safe_params = params.permit(params.keys.flatten)
link_to safe_params.to_h.merge(query_hash), options do
  raw("#{title} " + fa_icon(icon))
end

但是对我来说没有任何作用,有没有人经历过这样的错误。 如有任何帮助,我们将不胜感激。

最佳答案

我知道这是一个迟到的回复,但我遇到了类似的问题并找到了解决方案,因此可能对其他人有帮助。

我在 Active Admin 中传递搜查参数的链接中遇到了类似的问题。我的链接看起来与您的类似:

link_to('PRIMARY EMAILS ONLY', export_primary_emails_admin_admin_areas_path(format: "csv", params: params[:q]))

即使我按照文档设置了强参数,我仍然遇到相同的错误。我可以让它工作的唯一方法是强制允许在 link_to 之前直接使用该参数。

params[:q].permit!

它实际上做与强参数相同的事情,允许“q”参数中的任何内容。

ActiveAdmin.register AdminArea do
  permit_params q: []
end

关于ruby-on-rails - ActionController::UnfilteredParameters - 无法将未经允许的参数转换为散列 - Rails 5.1.6,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50339289/

相关文章:

mysql - rails 4.2 : Turn a reference field into foreign key

ruby-on-rails - 如何在 Rails3 中使用 CanCan 在事件页面上显示 AccessDenied 错误

ruby-on-rails - 使用 Nokogiri 通过 CDATA 属性在 XML 文件中查找元素?

ruby-on-rails - 获取从给定类派生的类列表

ruby-on-rails - Rails Activerecord 日期从 20 到 20

ruby-on-rails - 加载错误 :bcrypt

ruby-on-rails - 如何测试复合 Rails 模型范围?

ruby-on-rails - 将局部变量传递给每个循环 rails 的部分内部 3