[RUBY] Implementierung der Benutzerauthentifizierungsfunktion mit devise (3)

Neue Benutzerregistrierung

Speichern der von der Ansicht gesendeten Informationen in der Benutzertabelle Geben Sie die Modellinstanzvariable und die URL in form_with an.

registrations/new.html.erb


<%= form_with model:@user, url:"/users", local: true do |f| %>
 #Kürzung
<% end %>

Der im Modell angegebene @user: Hier ist eine Instanzvariable, die auf dem Benutzermodell basiert und im Devise Controller deklariert ist. Der Devise Controller ist normalerweise unsichtbar, aber es scheint, dass er mit dem folgenden Befehl generiert und angepasst werden kann.

$ rails g devise:controllers users

Der im folgenden Routing festgelegte Teil des URI-Musters wird in der URL angegeben :.

Prefix Verb   URI Pattern             Controller#Action                                                                 
       POST   /users(.:format)        devise/registrations#create

Wenn Sie Informationen in einer anderen Spalte als E-Mail und Kennwort speichern möchten, müssen Sie das Speichern in der Spalte mit der folgenden Beschreibung zulassen. Im folgenden Beispiel dürfen die Schlüssel: [: Benutzername] während der Anmeldung in der Spalte Benutzername gespeichert werden.

application_controller.rb


class ApplicationController < ActionController::Base
  before_action :configure_permitted_parameters, if: :devise_controller?

  protected

  def configure_permitted_parameters
    devise_parameter_sanitizer.permit(:sign_up, keys: [:username])
  end
end

Referenz: https://github.com/heartcombo/devise#strong-parameters

Ausloggen

Um die Abmeldefunktion zu implementieren, bereiten Sie einen Abmeldelink für die Ansichtsdatei vor, wie unten gezeigt.

<%= link_to 'Ausloggen', destroy_user_session_path, method: :delete, class: "logout" %>

Es ist in Ordnung, wenn Sie Pfad und Methode festlegen: auf die gleiche Weise wie die Routing-Einstellungen.

Prefix               Verb   URI Pattern                Controller#Action
destroy_user_session DELETE /users/sign_out(.:format)  devise/sessions#destroy

Einloggen

Um die Anmeldefunktion zu implementieren, bereiten Sie einen Anmeldelink für die Ansichtsdatei vor, wie unten gezeigt.

<%= link_to 'Einloggen', new_user_session_path, class: "login" %>

Schreiben Sie in Form der Ansicht, in der Sie zur Eingabe der Anmeldeinformationen aufgefordert werden, wie folgt.

sessions/new.html.erb


<%= form_with model:@user, url:user_session_path, class: 'registration-main', 
  #Kürzung
<% end %>

Anfrage-URL senden: Wie Sie sehen können, Wenn Sie auf den Anmeldelink klicken, wird die neue Aktion von Gerät / Sitzungen ausgeführt und Nach Eingabe der Anmeldeinformationen wird beim Senden die Erstellungsaktion von Gerät / Sitzungen ausgeführt und Sie können sich anmelden.

Prefix           Verb   URI Pattern                Controller#Action
new_user_session GET    /users/sign_in(.:format)   devise/sessions#new
    user_session POST   /users/sign_in(.:format)   devise/sessions#create

Obwohl es sich um eine kurze Erklärung handelt, wurde die Mindestfunktion der Benutzerauthentifizierungsfunktion unter Verwendung von devise implementiert. Danke für Ihren Besuch.

Zurück zu (2) Zurück zu (1)

Recommended Posts

Implementierung der Benutzerauthentifizierungsfunktion mit devise (2)
Implementierung der Benutzerauthentifizierungsfunktion mit devise (1)
Implementierung der Benutzerauthentifizierungsfunktion mit devise (3)
[Rails] Implementierung der Benutzerrückzugsfunktion
[Rails] Implementierung einer neuen Registrierungsfunktion im Assistentenformat mit devise
[Implementierungsverfahren] Erstellen Sie eine Benutzerauthentifizierungsfunktion mithilfe von Hexerei in Rails
Implementierung der Suchfunktion
Implementierung der Pagenationsfunktion
Einführung der Benutzerauthentifizierung
[Rails] Implementierung der Suchfunktion mit Gem's Ransack
Erstellen Sie die Authentifizierungsfunktion in der Rails-Anwendung mit devise
[Rails] Implementierung der Bildvergrößerungsfunktion mit Lightbox2
Implementierung der Google-Anmeldung mithilfe der Google OAuth 2.0-Authentifizierung (Server Edition)
Implementierung der Ruby on Rails-Anmeldefunktion (Devise Edition)
Implementierung der sequentiellen Suchfunktion
Implementierung einer ähnlichen Funktion (Ajax)
Implementierung der Bildvorschau
[Rails] Implementierung einer mehrschichtigen Kategoriefunktion unter Verwendung der Abstammung "Vorbereitung"
[Rails] Implementierung der Kategoriefunktion
Implementierung der Kategorie-Pulldown-Funktion
[Rails] Implementierung der Tutorial-Funktion
[Rails] Implementierung einer ähnlichen Funktion
[Rails] Implementierung einer mehrschichtigen Kategoriefunktion unter Verwendung der Abstammung "Edit Form Edition"
[Rails] Implementierung einer mehrschichtigen Kategoriefunktion unter Verwendung der Abstammung "Erstellungsformular"
[Rails] Implementierung des logischen Löschens durch den Benutzer
[Rails] Implementierung der CSV-Importfunktion
[Rails] Asynchrone Implementierung der Like-Funktion
Implementieren Sie Benutzerverwaltungsfunktionen mit Devise
[Rails] Über die Implementierung der Like-Funktion
[Rails] Implementierung der CSV-Exportfunktion
Implementierung der Validierung mit regulären Ausdrücken
Implementierung einer ähnlichen Funktion in Java
[Rails] Implementierung der Tag-Funktion mit Acts-as-Taggable-On und der Funktion zur Vervollständigung der Tag-Eingabe mit Tag-It
Rails [Für Anfänger] Implementierung der Kommentarfunktion
Implementierung von Registerkarten mit TabLayout und ViewPager
[Ruby on Rails] Implementierung einer ähnlichen Funktion
[Rails] Ich werde die Prozedur zum Implementieren der Follow-Funktion mit form_with erklären.
So implementieren Sie die E-Mail-Authentifizierungsfunktion zum Zeitpunkt der Benutzerregistrierung
Implementierung der Ruby on Rails-Anmeldefunktion (Sitzung)
Verwenden Sie [Rails], um eine Gastbenutzerfunktion zu entwickeln (für das Portfolio).
Implementierung der DM-Funktion
[FCM] Implementierung der Nachrichtenübertragung mit FCM + Spring Boot
Die heutige Lernzusammenfassung: Mit Implementierung der Benutzerverwaltungsfunktion
Benutzerregistrierung erstellen
[JQuery] Implementierungsverfahren der AutoComplete-Funktion [Java / Spring]
Implementierung der Suchfunktion Lernnotiz (Portfolioerstellung)