Authlogic访问会话对象中的用户ID

时间:2009-08-22 12:06:00

标签: ruby-on-rails authlogic

我想知道是否有人知道如何使用Authlogic gem从Rails中的会话对象访问用户ID?

我有一个清理程序,用于使特定于用户的缓存片段到期:

 def expire_cache_for(record)
    ActiveRecord::Base.logger.debug "team: #{record.team_id}"
    ActiveRecord::Base.logger.debug("User: #{session}")

    # Expire a fragment
    expire_fragment(:controller => 'groups',  :action => "team_#{record.team_id}_user_#{current_user.id}")
  end

如何使用Authlogic从扫地机访问用户ID以使片段到期?

1 个答案:

答案 0 :(得分:13)

您应该可以使用UserSession模型(或者您添加的从Authlogic :: Session :: Base派生的任何模型)来执行此操作:

current_user = UserSession.find
id = current_user && current_user.record.id