Ceci est un mémorandum lorsque la ** fonction de connexion invité ** a été ajoutée afin que vous puissiez vous connecter en appuyant simplement sur un bouton pour faciliter la visualisation du contenu lors de la création d'une application originale. Les nouvelles fonctions d'enregistrement et de connexion utilisent ** devise **.
models/users.rb
def self.guest
find_or_create_by!(username: 'Les invités', email: '[email protected]') do |user|
user.password = SecureRandom.urlsafe_base64
end
end
Tout d'abord, définissez le routage.
routes.rb
devise_scope :user do
post 'users/guest_sign_in', to: 'users/sessions#new_guest'
end
Ajoutez l'action new_guest
, à ʻusers / sessions_controller.rb. ʻAjoutez le répertoire des utilisateurs à
controllers`.
users/sessions_controller.rb
class Users::SessionsController < Devise::SessionsController
def new_guest
user = User.guest
sign_in user
redirect_to root_path, notice: 'Vous vous êtes connecté en tant qu'utilisateur invité.'
end
end
Si vous ajoutez une vue telle qu'un bouton à la fin, l'implémentation est terminée.
application.html.erm
<p class="control">
<%= link_to 'Connexion invité', users_guest_sign_in_path, class: "button is-warning is-fullwidth", method: :post %>
</p>
Ajout d'une fonction très importante pour vous permettre de voir le portfolio (application d'origine). C'était relativement facile à mettre en œuvre. Merci d'avoir lu jusqu'au bout: sourire:
Recommended Posts