Rails: напротив Hash # to_param

Если я преобразую хэш в строку запроса, как я могу его снова преобразовать?

{:filters => {:colour => ['Red', 'Blue'], :size => 'Medium'}}.to_param
=> "filters[colour][]=Red&filters[colour][]=Blue&filters[size]=Medium"

Rails выглядит так автоматически, когда он заполняет хэш params, но можно ли вызвать этот метод напрямую?

Спасибо.

Ответы

Ответ 1

Вы ищете Rack::Utils.parse_nested_query(query), который преобразует его обратно в Hash. Вы можете получить его, используя следующую строку:

require 'rack/utils'

Ответ 2

query_string = "filters[colour][]=Red&filters[colour][]=Blue&filters[size]=Medium"
CGI::parse(query_string)