我正在开发多租户rails应用程序而不使用apartment gem。我使用设计进行用户身份验证时遇到问题。
当我注册时,我的用户会话不会在所有子域中共享。 我发现我需要更改会话配置,这就是我的配置:
Rails.application.config.session_store :cookie_store, key: '_hyggebulk_session', domain: 'lvh.me', tld_length: 2
这是我的routes.rb:
Rails.application.routes.draw do
devise_for :users, controllers: { registrations: "registrations" }
constraints(SubdomainRequired) do
root to: "backend/dashboard#index", as: :authenticated_root
end
root to: "backend/dashboard#index"
end
我认为我的代码存在一些问题,所以请帮助我。
答案 0 :(得分:1)
您只需添加要与其共享会话/ Cookie的域
Rails.application.config.session_store :cookie_store, key: '_hyggebulk_session', domain: '*.lvh.me', tld_length: 2
或做类似的事情:
Rails.application.config.session_store :cookie_store, key: '_hyggebulk_session', domain: ['subdomain1.lvh.me', 'subdomain2.lvh.me'], tld_length: 2