| Methode | Verwenden | 
|---|---|
| before_action :authenticate_user! | Stellen Sie im Controller ein, dass nur Benutzer Zugriff erhalten. | 
| user_signed_in? | Stellen Sie fest, ob der Benutzer angemeldet ist. Gibt true zurück, wenn der Benutzer angemeldet ist, false, wenn er abgemeldet ist. | 
| current_user | Holen Sie sich den aktuell angemeldeten Benutzer | 
| user_session | Zugriff auf Benutzersitzungsinformationen | 
before_action :authenticate_user! Eine Methode, mit der die anzuzeigende Seite je nach Anmeldestatus umgeschaltet wird.
class SampleController < ApplicationController
  before_action :authenticate_user!, only: [:show]
  def index
  end
  def show
  end
end
Mit der einzigen Option ist die Show-Aktion nur für angemeldete Benutzer zugänglich, und auf die Indexaktion ist auch dann zugegriffen, wenn Sie nicht angemeldet sind.
user_signed_in?
<% if user_signed_in? %>
  <div class="user_nav grid-6">
    <%= link_to "Ausloggen", destroy_user_session_path, method: :delete %>
    <%= link_to "Post", new_tweet_path, class: "post" %>
  </div>
<% else %>
    <div class="grid-6">
      <%= link_to "Einloggen", new_user_session_path, class: "post" %>
      <%= link_to "Anmelden", new_user_registration_path, class: "post" %>
    </div>
<% end %>
Wenn Sie angemeldet sind, können Sie die Seiten "Abmelden" und "Veröffentlichen" anzeigen. Wenn Sie nicht angemeldet sind, können Sie "Anmelden" und "Neue Registrierung" anzeigen.
Zur Erinnerung, da die Geräteeinstellungen noch unbekannt sind
Recommended Posts