Я не нашел хорошего ответа на этот вопрос.Как я могу получить приложение Rails и приложение Sinatra (смонтированное в config.ru моего приложения Rails) для совместного использования сеанса?Если я сначала захожу в мое приложение Sinatra, а затем в приложение Rails, я получаю сообщение об ошибке типа undefined method sweep for {}:Hash
, вероятно, потому, что Rails использует собственный подкласс Hash для хранения информации о сеансе, а Rack :: Session :: Cookie - нет.Мой код пока:
config.ru
map "/" do
run MyRailsApp::Application
end
map "/sinatra" do
use Rack::Session::Cookie,
key: "_app_session",
secret: "<SECRET_KEY>"
run MySinatraApp
end
config / initializers / session_store.rb
MyRailsApp::Application.config.session_store :cookie_store, key: '_app_session'
config / initializers / secret_token.rb
MyRailsApp::Application.config.secret_token = "<SECRET_KEY>" # same as config.ru
Что-нибудь, что я пропустил?