2015-07-06 11 views
7

Una colonna utente standard in Devise è last_sign_in_at, che contiene il valore precedente di current_sign_in_at quando current_sign_in_at viene aggiornato.Che cosa è last_sign_in_at utilizzato in Devise?

last_sign_in_at ha qualche utilità per la funzionalità di base di Devise o la funzionalità del modulo o è solo lì come una comodità generale?

risposta

3

last_sign_in_at è la data e l'ora in cui l'utente ha effettuato l'accesso prima della sessione corrente (se presente). Sarà nil se questa è la prima sessione.

un nome migliore sarebbe stato previous_sign_in_at perché non è il momento hanno firmato in scorso (quella attuale), è il momento prima.

Il modo migliore per spiegarlo è illustrarne l'utilizzo: quando gli utenti accedono al sito, se il loro last_signed_in_at è inferiore all'ultimo aggiornamento ai termini Condizioni &, inviarli a una pagina di accettazione.

Come con la maggior parte degli attributi nel modulo Trackable, non viene utilizzato internamente a Devise sebbene sia gestito da esso.

+0

Come ottenere il tempo di sign_out in elaborazione? –

+0

Questa è una domanda diversa e il modulo tracciabile non sarà di aiuto. La tua risposta dipende da cosa vuoi e cosa hai già implementato. È possibile creare la propria colonna signed_out nel database e impostarla nell'azione di disconnessione del controller delle sessioni del controller, oppure utilizzare il modulo timeoutable di Devise (se disponibile) ed esaminare l'attributo last_access. – IAmNaN

Problemi correlati