Se eu converter um hash em uma string de consulta, como posso convertê-lo novamente?
{:filters => {:colour => ['Red', 'Blue'], :size => 'Medium'}}.to_param => "filters[colour][]=Red&filters[colour][]=Blue&filters[size]=Medium"
Rails parece fazer isso automaticamente quando preenche o hash de params
, mas é possível chamar esse método diretamente?
Obrigado.
Você está procurando Rack::Utils.parse_nested_query(query)
, que irá convertê-lo de volta em um Hash
. Você pode obtê-lo usando esta linha:
require 'rack/utils'
query_string = "filters[colour][]=Red&filters[colour][]=Blue&filters[size]=Medium" CGI::parse(query_string)