2013-05-09 3 views
10

Я хотел бы знать, как получить текущего пользователя, который входит в систему через активный графический интерфейс администратора?Как получить текущего пользователя, зарегистрированного через активный администратор?

Домашняя страница: http://www.activeadmin.info/

Заранее спасибо

МОДЕЛЬ

admin_user.rb

class AdminUser < ActiveRecord::Base 
    # Include default devise modules. Others available are: 
    # :token_authenticatable, :confirmable, 
    # :lockable, :timeoutable and :omniauthable 
    devise :database_authenticatable, 
     :recoverable, :rememberable, :trackable, :validatable 

    # Setup accessible (or protected) attributes for your model 
    attr_accessible :email, :password, :password_confirmation, :remember_me, :id , :admin_permission 
    # attr_accessible :title, :body 
    has_one :admin_permission 
    validates_uniqueness_of :email 

    def self.current_logged_user 
    # ? 
    end 
end 

UPDATE

Когда я пытаюсь использовать метод current_user в dashboard.rb или любом активном файле, связанном с администрацией, по-видимому, он не реализован.

ВЫВОД

undefined local variable or method `current_user' for 

ответ

20

Активный пользователь admin по умолчанию имеет значение AdminUser. Соответственно, соответствующий метод вспомогательного устройства составляет current_admin_user.

+0

Спасибо. Оно работает! Например: logger.debug «Текущий пользователь Admin: # {current_admin_user.email}" – ipegasus

0

перезагрузите страницу и увидеть в терминале, в данном случае, ставит правильный current_user авторизовались электронную почту.

index do 
    column :name 
    column :email 
    column :slug 
    column :partner 
    puts current_user.email 
    default_actions 
end 
+0

Спасибо за вашу помощь. Система возвращает: неопределенная локальная переменная или метод 'current_user '. Похоже, что метод curret_user должен быть реализован. – ipegasus

0

ActiveAdmin v1.x

index do 
    selectable_column 
    column :id 
    column :name 
    column :current_user_email do 
    current_user.try(:email) 
    end 
    actions 
end 
Смежные вопросы