Ruby on rails 你如何篡改AuthLogic来显示“您的;最后一句话;最后一次登录在?

Ruby on rails 你如何篡改AuthLogic来显示“您的;最后一句话;最后一次登录在?,ruby-on-rails,login,authlogic,Ruby On Rails,Login,Authlogic,我想对自上次有人登录以来发生变化的事件的进度进行编码 Authlogic在处提供了一个最后一次登录,\u但这是用户登录的日期时间,即使他当前可能仍在登录 我试图找出他们在那之前登录的时间。因此,当用户登录时,我有他们上次登录的日志,我可以向他们显示自那时以来发生的所有变化 我查看了AuthLogic::Session::MagicColumns,这是一种支持上次登录的方法,但找不到任何有用的东西 有什么想法吗?我没有读过与Authlogic相关的类似文章。看起来您必须编写一些自定义会话代码来存储

我想对自上次有人登录以来发生变化的事件的进度进行编码

Authlogic在处提供了一个
最后一次登录,\u但这是用户登录的日期时间,即使他当前可能仍在登录

我试图找出他们在那之前登录的时间。因此,当用户登录时,我有他们上次登录的日志,我可以向他们显示自那时以来发生的所有变化

我查看了AuthLogic::Session::MagicColumns,这是一种支持上次登录的方法,但找不到任何有用的东西


有什么想法吗?

我没有读过与Authlogic相关的类似文章。看起来您必须编写一些自定义会话代码来存储所需的日期时间。您可以重写Authlogic中的方法,该方法将
最后一次登录设置为
,并将旧值迁移到新的数据库列。

听起来不错,但我以前从未重写过gem。不确定如何/在哪里找到该代码。有什么提示吗?实际上,在您登录时更新当前登录之前,上次登录设置为当前登录,如文件lib/authlogic/session/magic\u column.rb顶部的注释所述。所以这应该是最后一次登录。我假设您最后一次登录时的字段是datetime类型,而不是时间戳,对吗?在查看源代码后,我相信@Warren是正确的。我没有注意到专栏的差异,你的问题似乎回避了,
last\u lgoin\u at
是他们当前的登录名。正如@Warren提到的,
最后一次登录是您想要的
current\u login\u at
是最近的登录。