Понимать концепцию current_user при создании сеанса входа в ruby

Я прохожу замечательный урок Майкла Хартла по созданию приложения rubyВот.

Я пытаюсь понять концепцию создания сеанса и застрял в понимании этой строки:

self.current_user = user

в этом методе:

module SessionsHelper

  def sign_in(user)
    cookies.permanent[:remember_token] = user.remember_token
    self.current_user = user
  end
end

Я понимаю всю концепцию создания куки с user_token.

But I don't understand what does self.current_user = user means and why is it even necessary to keep this line of code - I have the cookie with the token - why do I need to know the current user?

Кроме того, где это "само"? хранится - это не похоже наflash[:success] параметр, который я вижу в одном из моих представлений. так что я не понимаю, где это.

Есть также эти 2 метода в том же модуле:

  def current_user=(user)
    @current_user = user
  end

  def current_user
    @current_user ||= User.find_by_remember_token(cookies[:remember_token])
  end 

И все же я пытаюсь соединить точки цели для этого загадочногоcurrent user - его целью является создание@current_user глобальная переменная для использования в представлениях?

Если так - почему там эти 2 дублированные функцииdef current_user=(user) а такжеdef current_user

Ответы на вопрос(2)

Ваш ответ на вопрос