2

これはだましだと確信していますが、オリジナルを見つけることができませんでした。

のような GET スタイルの文字列が与えられた場合、Rails アプリでfoo=bar&x[0]=bazこれを - のような配列にデコードするにはどうすればよいですか?params


追加するように更新されましたCGI.parse: Rails が行う魔法よりもはるかに少ないように見えることに注意してください:

1.9.3p194 :006 > CGI::parse 'foo=bar&x[foo][bar]=baz'
 => {"foo"=>["bar"], "x[foo][bar]"=>["baz"]} 

CGI.parse は、ネストされたオブジェクトをマルチレベル ハッシュにアンパックしませんでした。Rails では、あるレベルで、これが実際に検査されます。

4

1 に答える 1

9

ネストされたクエリの場合、RailsはRacksのパラメータパーサーを使用しますRack::Utils.parse_nested_query

Rack::Utils.parse_nested_query 'foo=bar&x[foo][bar]=baz'
 => {"foo"=>"bar", "x"=>{"foo"=>{"bar"=>"baz"}}}
于 2012-10-17T17:48:50.780 に答える