Devise中的标准用户列为last_sign_in_at
,在current_sign_in_at
更新时保留current_sign_in_at
的上一个值。
last_sign_in_at
是否具有Devise核心功能或模块功能的任何实用程序,还是只是为了方便?
答案 0 :(得分:12)
last_sign_in_at
是用户在当前会话之前登录的日期和时间,即current_sign_in_at
。如果他们没有登录或这是他们的第一次会话,那将是nil
。
更好的名称可能是 previous_sign_in_at ,因为它们不是他们在 last (当前的那个)中签名的时间,而是之前的时间。
说明其用法可能会有所帮助:登录后,如果您的条款和{1}}上有updated_at
。条件页面比用户的last_sign_in_at
更新,然后将它们重定向到条款接受页面。
与Trackable模块中的大多数属性一样,虽然由它维护,但它不在内部用于Devise。
答案 1 :(得分:6)
查看源代码,它似乎只是Trackable
的一个属性 - 纯粹是一般的便利。
https://github.com/plataformatec/devise/search?utf8=%E2%9C%93&q=last_sign_in_at
此外,Devise的gemfile没有显示(我猜)会使用该字段的任何内容。
所以,只是一般的便利。