我在rails 5.2 app中使用了will_paginate gem和ransack gem。当我搜索或排序时,我收到以下错误:
unable to convert unpermitted parameters to hash
突出显示的代码行是:
tag :li, link(page, page, :rel => rel_value(page)), class: classes
Ransack的好人有他们自己的will_paginate分叉来解决这个问题。但是,该fork不包含非常好的page_entries_info
使用page_entries_info
会给出有关数组的错误。
有没有人用will_paginate和Rails 5.2解决了这些问题?
有没有人在will_paginate的github上创建一个解决问题的分叉?
我很乐意为此做出贡献。谢谢!
答案 0 :(得分:1)
您可以在覆盖symbolized_update方法的位置创建初始化。
WillPaginate::ViewHelpers::LinkRenderer.class_eval do
def symbolized_update(target, other, blacklist = nil)
other.each_pair do |key, value|
key = key.to_sym
existing = target[key]
next if blacklist && blacklist.include?(key)
if value.respond_to?(:each_pair) and (existing.is_a?(Hash) or existing.nil?)
symbolized_update(existing || (target[key] = {}), value)
else
if value.instance_variable_defined?(:@parameters)
value = value.instance_variable_get(:@parameters)
end
target[key] = value
end
end
end
end