2012-09-07 27 views
0

User.first.current_sign_in_at显然是我想要使用的,但是如何将其添加到钩子中?Rails - 当用户登录时尝试使用用户挂接找出方法时不存在错误 - devise

before_save :login_hook, :if => current_sign_in_at_changed? 

但我得到的方法不存在。

这似乎工作:

Execute JS code on user sign up/sign in with Rails + Devise

我已经设计:可跟踪模型和t.trackable在我的迁移。该数据库值也更新

+0

有一个devise的帮手'user_signed_in?' – Eru

+0

你在哪里添加这个钩子? –

回答

1

现在,忘了钩,就尝试使用

if (Time.new - current_user.last_sign_in_at) < 600 # seconds, so 10 minutes 
    do stuff 
else 
    # do other stuff, probably a redirect 
    # possibly sign_out_and_redirect(resource_name) 
end 

你可能想这在你的application_controller,以便适用于所有。

+1

我需要知道用户是否登录,如果他登录不了 – Ben

+0

用不同的方法更新。 –

+0

非常好,谢谢 – Ben

相关问题