我想知道是否有人知道如何使用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以使片段到期?
答案 0 :(得分:13)
您应该可以使用UserSession模型(或者您添加的从Authlogic :: Session :: Base派生的任何模型)来执行此操作:
current_user = UserSession.find
id = current_user && current_user.record.id