L'introduction de la devise est terminée Ce qui suit est un article de référence. ・ Htps: // Quiita. Ce m / Shinyakato / Te ms / A 098 A 741 A 142616 A 753
config.routes.rb
#Ajoutez ce qui suit
devise_for :users, :controllers => {
registrations: 'users/registrations',
sessions: 'users/sessions'
}
devise_scope :user do
post 'users/guest_sign_in', to: 'users/sessions#new_guest'
end
app.controllers.users.sessions.controller.rb
#Ajoutez ce qui suit
def new_guest
user = User.find(1)
user.update(email: '[email protected]',name: 'Utilisateur invité') do |user|
user.password = SecureRandom.urlsafe_base64
end
sign_in user
redirect_to root_path
end
app.views.tweets.index.html.haml
#Ajoutez ce qui suit
.guest
= link_to users_guest_sign_in_path, method: :post, class:"guest__btn" do
Les invités
-Utilisez la méthode sign_in de devise.
-En utilisant find_by, vous pouvez éviter de créer des utilisateurs invités à l'avance.
-Créez un mot de passe au hasard en utilisant SecureRandom.urlsafe_base64. Cela empêchera le mot de passe d'être divulgué lorsque le code source est téléchargé sur GitHub.
Le contenu que j'ai présenté n'est qu'un moyen d'enregistrer des utilisateurs invités. Si vous souhaitez empêcher la fonction de suppression de compte et le changement de mot de passe, vous devez le définir comme un plus pour le contenu introduit jusqu'à présent.