• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:redirect先でredirect元の変数を参照)

リダイレクト先のviewでリダイレクト元のデータを表示する方法

このQ&Aのポイント
  • リダイレクト先のviewで、リダイレクト元のコントローラの変数を受け取る方法について説明します。
  • redirect_to先のviewで、リダイレクト元のデータを参照するためには、リダイレクト先のコントローラで変数を設定し、その変数をviewで表示する必要があります。
  • 具体的には、リダイレクト元のコントローラで渡した変数をリダイレクト先のコントローラで受け取り、その受け取った変数をviewで表示することができます。

質問者が選んだベストアンサー

  • ベストアンサー
  • tatsu99
  • ベストアンサー率52% (391/751)
回答No.1

そのような場合は、flashを使用すると良いでしょう。 セッションを使用する方法もありますが、リダイレクトした先の画面で一時的に使用したい場合は、 flashが適しています。 def foo   arr = [1,2,3,4]   #arrをいろいろと処理   flash[:arr] = arr #ここで設定する   redirect_to :controller => "top", :action => "bar"  end def bar   #ここで@arr = arrしたい   arr = flash[:arr] #ここで元の画面で設定したarrが取得できる  end 尚、flashは現在のリクエストと次のリクエストのみで使用可能です。その次のリクエストでは使用できません。(使用可能にする方法が無いわけではありませんが、そのままだと使用できません) 今回はflash[:arr]としましたが、:arrのところは、他のシンボル名でもかまいません。 例 flash[:hogehoge] = arr でもOKです。

関連するQ&A