我正在使用Devise来处理我的网站身份验证。有没有办法在登录我的应用程序时添加记录用户IP地址的功能?
我们只是想看看人们从哪里登录。
由于
修改
有人指出,设计用户模型会监视登录用户的当前和最后一个。我想保留每次登录的记录。
答案 0 :(得分:2)
设计用户表中自动存储用户的当前和最后一个IP地址。它使用的列名是current_sign_in_ip
,last_sign_in_ip
。要跟踪用户的所有会话,您可以使用https://github.com/shenoudab/devise_traceable
答案 1 :(得分:2)
您可以使用User.rb
内的Warden挂钩做任何您想做的事。
Warden::Manager.after_set_user do|record, warden, opts|
logger.info("sign in at: #{record.current_sign_in_at}, #{record.current_sign_in_ip}")
record.account_logins.create!(ipAddress: record.current_sign_in_ip)
end