是否有可能将Rails的Flash消息传递给Sinatra?

Ada*_*sek 5 rack middleware ruby-on-rails sinatra ruby-on-rails-3

我有一个项目,使用Sinatra的静态页面和Rails的应用程序.

我允许请求通过以下方式执行此操作config.ru:

run Rack::Cascade.new([
  EightyEightTactical::Root,
  EightyEightTactical::Application
])
Run Code Online (Sandbox Code Playgroud)

EightyEightTactical::Root是的子类Sinatra::BaseEightyEightTactical::Application是的子类Rails::Application.

我处在一个棘手的情况,我需要在Rails控制器中设置一个flash消息并以Sinatra布局显示它.

我注意到Rails ActionDispatch::Flash在中间件中使用,但我似乎无法弄清楚如何在Rails应用程序之外访问flash消息.我错了,还是可以这样做?

Har*_*tty 3

假设您使用 Cookie 会话存储,您可以执行以下操作:

1) 访问指定名称的会话cookie config/initializers/session_store.rb

2)解密会话cookie以获得会话哈希

flash3) 访问包含哈希值的key 。

4) 迭代并显示闪现消息。

您应该查看ActionController::Session::CookieStore类以获取更多详细信息。