Come posso firmare un utente in clearance da un router personalizzato?
-
13-11-2019 - |
Domanda
Aggiungo Omniauth alla mia app dove sto usando il gioco per l'autenticazione regolare.Ho incontrato un muro cercando di firmare un utente programmaticamente.
Sto cercando qualcosa come sign_in_and_redirect
da Devise, ma non riesco a trovarlo in sdoganamento.
Ho provato a utilizzare sign_in <User>
e chiamando redirect_to root_path
subito dopo.Tuttavia, quando carichi la pagina principale, il current_user
non è impostato.
Qualcuno sa come farlo?Qualcuno sa di un tutorial per l'aggiunta di Omniauth a liquidazione?
Grazie
Soluzione
Non ho usato il clearance, di solito raggrupperei la mia autenticazione o l'uso di idee, ma un aspetto rapido attraverso il codice mi dice che Sign_in (@User) non fa altro che impostare @ Current_User= @ utente quindi hai bisogno di alcuniil modo di persistere quella informazione prima di reindirizzare.L'autorizzazione sembra usare un ricordo_tokato per questo, quindi proverei (non testato) qualcosa del genere:
sign_in(@user)
cookies['remember_token'] = @user.remember_token
redirect_to(root_path)
.