2

だから、私はこのようなコントローラを持っています

class SomethingController < ApplicationController
  def show
    flash[:notice] = "TEST"
    redirect_to root_path(:subdomain => 'test')
  end
end

さらに、 config/initializers/session_store.rb にこの行があります

Foo::Application.config.session_store :cookie_store, :key => '_foo_session', :domain => :all

私の問題は次のとおりです。http://example.com/something (上記のコントローラー アクションにつながるルート) に移動すると、アクションはフラッシュを正しく設定し、適切なサブドメイン URL (http://test.example.com/) にリダイレクトします。そのアクションのビューには、前のアクションで設定したフラッシュが正しく表示されます。ただし、このアクションの後、または問題のサブドメインでのその後のアクションの後、フラッシュはクリアされず、ルート ドメイン (example.com) の他の URL に手動で戻るまで表示され続けます。その時点でフラッシュがリセットされ、どちらのドメインにも表示されなくなります。

使おうとしたら

flash.now[:notice] = "TEST"

それ以外の

flash[:notice] = "TEST"

リダイレクトの最後のページはメッセージの存在をまったく登録しないため、何も表示されません。

上記の最初のケースで説明されている機能を取得するにはどうすればよいですか?ただし、通常どおりに動作し、要求後にフラッシュをクリアしますか?

4

0 に答える 0