[RAILS] Méthodes d'assistance disponibles dans la devise

Méthode Utilisation
before_action :authenticate_user! Défini dans le contrôleur pour autoriser l'accès uniquement aux utilisateurs.
user_signed_in? Déterminez si l'utilisateur est connecté. Renvoie true si l'utilisateur est connecté, false s'il est déconnecté.
current_user Obtenez l'utilisateur actuellement connecté
user_session Accéder aux informations de session utilisateur

before_action :authenticate_user! Une méthode de conception qui change la page à afficher en fonction de l'état de connexion.

class SampleController < ApplicationController
  before_action :authenticate_user!, only: [:show]

  def index
  end

  def show
  end
end

Avec la seule option, l'action show n'est accessible qu'aux utilisateurs connectés et l'action d'index est accessible même si vous n'êtes pas connecté.

user_signed_in?

<% if user_signed_in? %>
  <div class="user_nav grid-6">
    <%= link_to "Se déconnecter", destroy_user_session_path, method: :delete %>
    <%= link_to "Publier", new_tweet_path, class: "post" %>
  </div>
<% else %>
    <div class="grid-6">
      <%= link_to "S'identifier", new_user_session_path, class: "post" %>
      <%= link_to "s'inscrire", new_user_registration_path, class: "post" %>
    </div>
<% end %>

Si vous êtes connecté, vous pouvez afficher les pages "Déconnexion" et "Publier", et si vous n'êtes pas connecté, vous pouvez afficher "Connexion" et "Nouvelle inscription".

Pour rappel, les paramètres de l'appareil n'étant toujours pas familiers

Recommended Posts

Méthodes d'assistance disponibles dans la devise
À propos des méthodes fréquemment utilisées dans la conception
[Rails] conçoit une méthode d'aide
Activer des paramètres forts dans la conception
Tester les méthodes privées dans JUnit
Tester les méthodes privées dans JUnit
Méthodes statiques simulées dans Mockito 3.4
[Rails] Paramètre de délai d'expiration de session dans l'appareil
[rails] Implémentation de l'écran de connexion dans la devise
[Rails] Erreur de validation inattendue dans l'appareil
Différences dans les méthodes de fractionnement de StringUtils
Configurer le routage de pré-connexion dans Devise
Méthodes fréquemment utilisées dans Active Record
Méthodes Ruby souvent utilisées dans Rails