Come posso creare un “Ospite” sessione in modo che l'assistente current_user Devise mostrerà il mio utente Guest Default?
-
09-10-2019 - |
Domanda
Voglio tutti gli utenti al mio sito di avere una sessione di default "Guest". Sto usando Devise. Tutto il mio codice escogitare sta lavorando per gli utenti iscritti, ma ho anche un record utente per un utente "Guest".
Tutto quello che voglio fare è automaticamente il login qualcuno come quell'utente, in modo che in mie opinioni e altrove, la chiamata a current_user di Devise non mancherà.
Ho trascorso dalla fine del mese di settembre cercando di trovare una risposta per questo. Non riesco nemmeno a ottenere una risposta sulla mailing list Devise.
Soluzione
def set_user
if current_user.blank?
user = User.where(:email => "guest@mycompany").first
if user.blank?
redirect_to new_user_registration_path
else
sign_in(user) # Why was this so hard to find out? I had to read all of the Devise code.
end
end
end
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow