2010-11-09 4 views
5

In Devise, che sto firmando nel mio utente in questo modo:Quando si esegue un sign_in manuale per l'utente in Devise, come si può impostare ricordarmi di sì?

sign_in_and_redirect(:user, user) 

Nel segno di default nella pagina, c'è una casella di controllo che l'utente può selezionare in modo che essi non devono accedere di nuovo quando hanno tornare al sito. Ma quando esegui l'accesso con la linea sign_in_and_redirect(:user, user), non riesco a capire come impostare quel parametro su yes. Qualcuno sa come? Grazie per aver letto.

risposta

4
+2

Questo non ha funzionato per me . Invece ho dovuto usare https://github.com/plataformatec/devise/blob/master/lib/devise/controllers/rememberable.rb 'include Devise :: Controllers: Rememberable' e poi nell'azione basta chiamare' remember_me the_user' –

+1

Ho anche dovuto fare ciò che suggeriva Dmytrii (anche se è incluso Devise :: Controllers :: Rememberable (mancano gli altri due punti prima di Rememberable)) – jhchen

4

fatto dei test. Presentando i risultati per gli altri.

La soluzione più semplice, assumendo l'oggetto utente ha il modulo rememberable definito sul devise dichiarabile, è quello di impostare remember_me su true per l'utente prima del segno e reindirizzare:

@user.remember_me = true 
sign_in_and_redirect(@user, :event => :authentication) 
+0

Questo ha funzionato per me! Grazie. – maicher

Problemi correlati