我开始使用设计,我希望能够将用户属性更新为在线或离线。我有这个
class ApplicationController < ActionController::Base
private
def after_sign_in_path_for(resource_or_scope)
#update user status to online
root_path
end
def after_sign_out_path_for(resource_or_scope)
#update user status to offline
root_path
end
end
但我不知道如何编写更新方法
答案 0 :(得分:5)
我过去做过这个:
Warden::Manager.after_authentication do |user,auth,opts|
user.update_attribute(:currently_signed_in, true)
end
Warden::Manager.before_logout do |user,auth,opts|
user.update_attribute(:currently_signed_in, false)
end
请参阅此问题:Devise call backs