Ruby 使用DataMapper作为Padrino会话存储
我能让帕德里诺和奥米纳特一起工作。主要目标是在主应用程序和管理部分拥有相同的会话和用户,并拥有非常持久的会话。选项Ruby 使用DataMapper作为Padrino会话存储,ruby,datamapper,rack,omniauth,padrino,Ruby,Datamapper,Rack,Omniauth,Padrino,我能让帕德里诺和奥米纳特一起工作。主要目标是在主应用程序和管理部分拥有相同的会话和用户,并拥有非常持久的会话。选项set:sessions被禁用,所以我打了补丁/padrino-core-0.9.23/lib\padrino-core/application.rb:203如果Flash?使用Rack::Flash不需要sessions?。此外,我还修补了/padrino-admin-0.9.23/lib/padrino-admin/access\u-control.rb:15以不启用会话 以下是
set:sessions
被禁用,所以我打了补丁/padrino-core-0.9.23/lib\padrino-core/application.rb:203
如果Flash?
使用Rack::Flash不需要sessions?
。此外,我还修补了/padrino-admin-0.9.23/lib/padrino-admin/access\u-control.rb:15
以不启用会话
以下是我的应用程序代码:
/admin/app.rb:
set :session_id, 'superapp.pro'.to_sym
use Rack::Session::DataMapper
/app/app.rb:
set :session_id, 'superapp.pro'.to_sym
use Rack::Session::DataMapper
/lib/omniauth_init.rb:
use Rack::Session::DataMapper
问题是:有没有更好的方式与Omniauth成为定制机架会话存储区的朋友?我不习惯三次使用
Rack::Session::DataMapper
。延迟回答,但我相信如果您:
Padrino.before_load do
Padrino.use Rack::Session::DataMapper
end
在您的“config/boot.rb”中,您会很好,并且不需要重复。@ujifgc对不起,应该是“Padrino.use”,而不仅仅是“use”。编辑了我的答案。试试看。