30

これは簡単なはずですが、簡単な答えが見つからないようです。

パラメータ値を現在のリクエストから redirect_to 呼び出しに渡すにはどうすればよいですか? GET リダイレクトのクエリ文字列に渡したいフォーム値がいくつかあります。

私は次のようなことをしたいと思います:

redirect_to @thing, :foo => params[:foo]

送信先:

http://things/4?[foo][key1]=val1&[foo][key2]=val2

ありがとう!

また、これを redirect_to :back でどのように処理できますか?

redirect_to :back, :foo => params[:foo]
4

2 に答える 2

41

の 'Record' 形式はredirect_to、応答ステータスに対してのみ 2 番目の引数を使用します。「文字列」形式など、別の形式の redirect_to を使用する必要があります。例えば:

redirect_to thing_path(@thing, :foo => params[:foo])

params[:foo]あなたが言及したように、ネストされたパラメーターで機能します。または、Drew が以下にコメントしたように、polymorphic_url (または _path)を使用できます。

redirect_to polymorphic_path(@thing, :foo => params[:foo])
于 2009-04-04T13:49:41.213 に答える
4

ジョーダンの答えに追加するには:

オブジェクトのタイプがわからない場合は、ユニバーサルメソッド@thingを使用できます。これは、とにかくpolymorphic_urlオブジェクトを渡すときに内部的に呼び出されるメソッドです。redirect_to

于 2009-04-06T01:19:47.427 に答える