2009-07-28 34 views
1

J'ai considéré CGI::Application et CGI::Session. Des deux, CGI::Session semble plus prometteur. Cependant, le modèle CGI::Application ne semble pas fonctionner correctement avec Template Toolkit. (Ai-je tort de le penser?)Quelle bibliothèque de gestion de session Perl fonctionne bien avec TemplateToolkit?

Je voudrais évaluer plus de bibliothèques de gestion de session, avant d'en créer une. Des recommandations? Je suis à la recherche d'une bibliothèque agnostique pour serveur Web et fonctionne sur plusieurs serveurs. Catalyst n'est pas une option pour l'instant, en raison du temps nécessaire pour adapter le code existant à la façon de faire Catalyst.

+0

Je ne comprends pas que vous ayez besoin que la bibliothèque de gestion de session fonctionne correctement avec votre bibliothèque de modèles. Quel est exactement ce que vous cherchez? – innaM

+0

Certaines bibliothèques de gestion de session sont intégrées à l'intérieur de certaines grandes structures telles que Catalyst, ce qui vous oblige à faire les choses à leur manière. Notre propre framework utilise la méthode TemplateToolkit de MVC (sorte de). Ainsi, nous aurons besoin d'une bibliothèque qui ne nous oblige pas à utiliser leur façon de faire les choses. (En bref, une bibliothèque faiblement couplée) – GeneQ

+0

OK. Je l'ai. Merci d'avoir éclairci ça. – innaM

Répondre

5

CGI::Application et CGI::Session sont des modules très différents. CGI::Session est un module de session - il ne fait rien d'autre. CGI::Application est un cadre léger. Il fonctionne bien avec Template Toolkit, certains d'entre nous utilisent avec CGI::Application::Plugin::TT. Donc, si vous n'avez besoin que de sessions, utilisez CGI :: Session.

Si vous avez besoin d'une meilleure structure de votre code - utilisez CGI :: Application. Vous pouvez même utiliser CGI :: Session avec CGI :: Application :: Plugin :: Session.

+0

Bonne réponse. Juste ce que je voulais savoir. ;-) – GeneQ

0

J'ai utilisé Apache::Session avec un certain succès. Bien que le nom raconte une histoire différente, je ne pense pas que cela fonctionnera uniquement avec un serveur web Apache. La bonne chose est que vous pouvez facilement changer la façon dont les sessions sont stockées sans changer votre propre code de gestion de session. Par exemple. vous pouvez commencer avec des sessions stockées en tant que fichiers sur le disque, puis passer à un système basé sur DB. Et puis changez le backend DB après cela.

+0

Y at-il quelque chose de mal avec Apache :: Session? – innaM

+0

Je ne vois pas ce que vous gagnez avec Apache :: Session sur CGI :: Session/CGI :: Application :: Plugin :: Session, car les avantages que vous décrivez pour Apache :: Session sont disponibles pour CGI :: Session. – MkV

+0

Cela rend Apache :: Session un mauvais conseil et une raison pour un downvote? – innaM