undefined variable locale ou de la méthode 'current_user'

Je suis en train de passer par un RoR tutoriel (http://railstutorial.org/chapters/sign-in-sign-out#sec:signin_success est la section pertinente) qui semble être assez bon, même si j'ai couru dans le problème suivant lorsque j'essaie de visualiser le site d'échantillonnage.

Extracted source (around line #10):

7:          <li><%= link_to "Home", root_path %></li>
8:          <li><%= link_to "About", about_path %></li>
9:          
10:             <% if signed_in? %>
11:                 <li><%= link_to "Profile", current_user %></li>
12:                 <li><%= link_to "Sign out", signout_path, :method => delete %></li>
13:             <% else %>

Comme vous pouvez le voir, le problème est issu de ma méthode "signed_in?" qui est censé vérifier si l'utilisateur est connecté ou non en vérifiant si l'current_user variable est définie (j'ai inclus le reste du code de l'aide pour donner un contexte, des excuses):

module SessionsHelper

  def sign_in(user)
    cookies.permanent.signed[:remember_token] = [user.id, user.salt]
    current_user = user
  end

  def sign_out
    cookies.delete[:remember_token]
    current_user = nil
  end

  def current_user= (user)
    @current_user ||= user_from_remember_token
  end

  def signed_in?
    !current_user.nil?
  end

  private

    def user_from_remember_token
      User.authenticate_with_salt(*remember_token)
    end

    def remember_token
      cookies.signed[:remember_token] || [nil, nil]
    end

end

À partir de ma compréhension .néant? est une méthode qui vérifie si un objet n'a pas été défini et, par conséquent, l'objet non défini ne pas générer une erreur mais plutôt return false? J'ai cherché sur le tutoriel pour tous les cas de current_user (avant de vérifier pour voir si quelqu'un d'autre a eu ce problème avec peu de succès) et mon code semble correct, donc je suis un peu confus et si quelqu'un est capable de m'aider à comprendre la façon dont Ruby variables sont censés être accessibles et pourquoi mon code ne fonctionne pas je lui en serais très reconnaissant.

Edit:

Je ne sais pas si c'est important avec la portée que je suis juste de commencer, les deux Rails et Ruby, cependant l'aide SessionsHelper est utilisé par mes Utilisateurs contrôleur et points de vue (il est inclus dans mes Applications de contrôleur)

OriginalL'auteur djlumley | 2010-11-13