flashに入れたオブジェクトは、「次のアクションまで有効」だったはずなのですが、Rails2.3からは「次にflashにアクセスされるまで有効」に変更になっているようです。
例
下記のようなコントローラで、indexアクションにアクセスすると、index2を経由してindex3に飛びます。
class MainController < ApplicationController def index flash[:hoge] = "hoge" redirect_to :action => "index2" end def index2 redirect_to :action => "index3" end def index3 end end
index3で下記のようにflashを表示するように書いても、通常は表示されないはずなのですが、Rails2.3.2で試したところ"hoge"と表示されてしまいました。
<%= flash[:hoge] %>
ドキュメントを見ても、「flashは次のアクションまで」と書いてあるようなので、これはバグなんでしょうかね?