solidus_searchkick - 未定义的方法`deep_symbolize_keys'

时间:2018-05-02 21:54:20

标签: ruby-on-rails ruby searchkick solidus

我正在使用Solidus,我想用弹性搜索实现更好的搜索,我使用solidus_searchkick来做到这一点。但是我收到以下错误:

undefined method 'deep_symbolize_keys' for #<ActionController::Parameters:0x0000556eae99cda8>

在Spree :: HomeController#index中,它有:

Spree::HomeController.class_eval do
    def index
        @searcher = build_searcher(params.merge(include_images: true))
        @products = @searcher.retrieve_products
        @taxonomies = Spree::Taxonomy.includes(root: :children)
    end
end

我没有在Solidus的搜索选项中更改任何内容。

我在运行'捆绑安装'后立即收到此错误,安装一切就好了。 然后,我运行'rails s',当我试图让我的家或任何其他页面向我显示任何产品时,我收到此错误。

版本:

  • Rails: 5.1.6
  • Ruby: 2.5.1
  • solidus_searchkick: 0.3.4
  • Solidus: 2.5.0

1 个答案:

答案 0 :(得分:0)

这是Rails 5.1中不推荐使用的方法deep_symbolize_keys的问题。我刚刚提交了对solidus_searchkick gem的请求请求。您可以在这里https://github.com/elevatorup/solidus_searchkick/pull/6/files

找到它

如果将您的solidus_searchkick宝石指向该分支,它将起作用。