On m'a toujours dit de me méfier des modèles ActiveRecord en session, voir :
http://railscasts.com/episodes/13-dangers-of-model-in-session

A priori il vaut mieux stocker l'ID :
session[:user] = @user.id
Et en cas de besoin, récupérer l'object (modulo les tests qui vont bien) :
@user = User.find(session[:user])
Ensuite ne manipuler que @user, ce qui aurait sans doute évité le problème
que tu as rencontré.

Si je fais fausse route, n'hésitez pas à me corriger.

Cdt,
-- 
Jean-Baptiste

Le 30 août 2009 23:34, alternative451 <[email protected]> a écrit :

>
> OoOoo joie !
> et bien vous saviez vous que les attributs d'un objet de session ne se
> modifient pas avec une simple opération d'égalité ?
> dans ma configuration actuelle
> session[:unObjet].unAttribut =  'une modification' ne prend pas effet
> hors de la méthode. comme si on reste en passage en copie au lieu
> d'une référence.
> par contre
> session[:unObjet].update_attribute(:unAttribut =>  'une
> modification' ) prends effet
> c'est beau de découvrir un langage.
> désolé du dérangement. mais peut être cela peut être utile à certains
> >
>

--~--~---------~--~----~------------~-------~--~----~
Vous avez reçu ce message, car vous êtes abonné au groupe "Railsfrance" de 
Google Groups.
Pour transmettre des messages à ce groupe, envoyez un e-mail à l'adresse 
[email protected]
Pour résilier votre abonnement envoyez un e-mail à l'adresse 
[email protected]
-~----------~----~----~----~------~----~------~--~---

Répondre à