IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Ruby on Rails Discussion :

modifier attribut apres connexion


Sujet :

Ruby on Rails

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Novembre 2011
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2011
    Messages : 3
    Points : 2
    Points
    2
    Par défaut modifier attribut apres connexion
    Bonjour,

    J'ai une classe user avec un attribut last_log
    comment peut on modifier la valeur de l'attribut lors de la connexion de l'utilisateur ?

  2. #2
    Candidat au Club
    Profil pro
    Inscrit en
    Novembre 2011
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2011
    Messages : 3
    Points : 2
    Points
    2
    Par défaut
    *update*

    class SessionsController < ApplicationController
    def new
    end

    def create
    utilisateur = Utilisateur.authenticate(params[:session][:login],
    params[:session][:mdp])
    if utilisateur.nil?
    flash.now[:error] = "Couple login/mot de passe invalide"
    render 'new'
    else
    sign_in utilisateur
    redirect_back_or utilisateur #log + redirection sur la page de l'utilisateur
    end
    end

    def destroy
    sign_out
    redirect_to root_path
    end

    end


    **********************
    module SessionsHelper

    def sign_in utilisateur
    cookies.permanent.signed[:remember_token] = [utilisateur.id, utilisateur.sel_h]
    self.current_user= utilisateur
    end

    def current_user
    @current_user ||= utilisateur_from_remember_token #appel utilisateur_from_remember_token si @current_user non défini.renvoi @current_user sinon.
    end

    def current_user= utilisateur
    @current_user = utilisateur
    end

    def signed_in?
    !current_user.nil? #vrai si un utilisateur est identifié et faux sinon
    end

    def sign_out
    cookies.delete(:remember_token)
    #utilisateur = Utilisateur.find(@current_user.id)
    #utilisateur.date_derniere_co = Time.now.strftime("%d-%m-%Y")
    #utilisateur.save
    self.current_user = nil
    end


    def acces_interdit
    store_location
    redirect_to inscription_path, :notice => "Vous devez vous inscrire pour acceder a ce contenu"
    end

    def redirect_back_or(default)
    redirect_to(session[:return_to] || default)
    clear_return_to
    end

    def current_user?(utilisateur)
    utilisateur == current_user
    end


    private

    def utilisateur_from_remember_token
    Utilisateur.authenticate_with_sel_h(*remember_token) #remember_token devient un argument alors que c'est un tableau a 2 variables
    end

    def remember_token
    cookies.signed[:remember_token] || [nil, nil] #si cookies.signed[:remember_token] est nul alors on retourne le tableau nul
    end

    def store_location
    session[:return_to] = request.fullpath
    end

    def clear_return_to
    session[:return_to] = nil
    end

    end


    *************************
    j'ai cette erreur a chaque fois que je fais @current_user.id

    "Called id for nil, which would mistakenly be 4 -- if you really wanted the id of nil, use object_id"


    J'arrive pas à comprendre pourquoi.si quelqu'un a le début du xommencement d'une explication...

  3. #3
    Membre actif Avatar de rivsc
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2008
    Messages
    213
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2008
    Messages : 213
    Points : 275
    Points
    275
    Par défaut
    Ben le message c'est @current_user est null (nil), quelle ligne ?

Discussions similaires

  1. Variable non modifiée après connexion$
    Par piero53 dans le forum Débuter
    Réponses: 1
    Dernier message: 19/02/2012, 00h49
  2. Réponses: 2
    Dernier message: 02/11/2005, 21h23
  3. Lancer automatiquement un programme après connexion Internet
    Par sunshine dans le forum Autres Logiciels
    Réponses: 3
    Dernier message: 27/05/2005, 22h18
  4. Réponses: 4
    Dernier message: 19/03/2004, 11h48
  5. [FICHIERS] Modifier Attributs de fichier
    Par sbeu dans le forum Langage
    Réponses: 6
    Dernier message: 30/04/2003, 10h57

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo