Я определил вспомогательный класс, как показано ниже
module SessionsHelper
def current_user
@current_user= User.find_by_fbid(session[:fbid])
end
def sign_in(user)
session[:fbid] = user.fbid
@current_user = user
end
def signed_in?
!current_user.nil?
end
end
Я включил вспомогательный класс в свой контроллер приложения
class ApplicationController < ActionController::Base
protect_from_forgery
include SessionsHelper
end
Метод входа вызывается из контроллера сеанса
class SessionsController < ApplicationController
def create
user = User.find_or_create_by_fbid(params[:user][:fbid])
user.update_attributes(params[:user])
sign_in(user)
redirect_to user_path(user)
end
end
Однако я не может получить доступ к переменной 'current_user' от пользователей # show view.
<% if signed_in? %>
<p>
<b>Current User:</b>
<%= current_user.name %>
</p>
<% end %>
Он говорит: undefined method 'name' для nil: NilClass
Кто-нибудь может посоветовать? Метод current_user вообще не вызывается из индекса.