127 votes

Comment vider/détruire une session dans rails ?

Je n'arrive pas à le trouver... Comment supprimer/détruire/remettre à zéro/vider/effacer la session d'un utilisateur dans Rails ? Pas seulement une valeur mais l'ensemble...

194voto

Gdeglin Points 6687

Pour effacer le tout, utilisez la méthode reset_session dans un contrôleur.

reset_session

Voici la documentation sur cette méthode : http://api.rubyonrails.org/classes/ActionController/Base.html#M000668

Réinitialise la session en effaçant tous les objets qui y sont stockés et en et en initialisant un nouvel objet de session.

Bonne chance !

41voto

Lavixu Points 447

La session dans rails est un objet de type hash. Par conséquent, toute fonction disponible pour effacer le hachage fonctionnera avec les sessions.

session.clear

o

session = {}

ou si des clés spécifiques doivent être détruites :

session.delete(key)

Testé dans rails 3.2

5voto

vladCovaliov Points 701

Pour effacer seulement certains paramètres, vous pouvez utiliser :

[:param1, :param2, :param3].each { |k| session.delete(k) }

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X