2011-04-24 3 views
1

J'ai été en mesure de créer Rack::Session::DataMapper, Padrino et Omniauth fonctionnent ensemble. L'objectif principal était d'avoir les mêmes sessions et utilisateurs dans l'application principale et dans la section admin, et d'avoir des sessions très longues. L'option set :sessions a été désactivée, donc j'ai corrigé /padrino-core-0.9.23/lib\padrino-core/application.rb:203use Rack::Flash if flash? pour ne pas avoir besoin de sessions?. J'ai également corrigé /padrino-admin-0.9.23/lib/padrino-admin/access_control.rb:15 pour ne pas activer les sessions.Utilisation de DataMapper comme magasin de sessions Padrino

Voici mon code application:

/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 

La question est: est-il un meilleur moyen de befrien d magasin de session de rack personnalisé avec Omniauth? Je ne suis pas à l'aise avec l'utilisation de Rack::Session::DataMapper trois fois.

Répondre

0

réponse tardive, mais je crois que si vous mettez:

Padrino.before_load do 
    Padrino.use Rack::Session::DataMapper 
end 

dans le votre « config/boot.rb » vous serez très bien, et ne sera pas besoin de doublons.

+0

Non, ne fonctionne pas. Aucune telle méthode 'use' à l'intérieur de cela. – ujifgc

+0

@ujifgc Désolé, cela aurait dû être "Padrino.use", pas seulement "utiliser". Edited ma réponse. Essaie. – Foot

Questions connexes