Ich habe eine App erstellt, mit der Reservierungen verwaltet werden können. (Benutzer müssen sich nicht als Mitglied registrieren.) Auf dem Admin-Bildschirm habe ich beschlossen, "gem'devise" zu verwenden, um eine Authentifizierungsfunktion zu erstellen, die nur von autorisierten Benutzern verwendet werden kann. Nachdem ich die gerätebezogene Installation und Einstellungen abgeschlossen hatte, überprüfte ich die verfügbaren Funktionen und stellte fest, dass es viele unnötige Funktionen gab (Benutzerregistrierung / Kennworteinstellung usw.). Da der Administratorbildschirm grundsätzlich nur von zwei Personen verwendet wird, wurden beim Erstellen der App nur die Benutzerinformationen von zwei Personen festgelegt. (Wird über die Rails-Konsole oder SQL festgelegt.)
module | Funktion |
---|---|
database_authenticatable | Verschlüsselung von in DB gespeicherten Passwörtern(Eine Benutzerregistrierung ist ohne diese Funktion nicht möglich) |
registerable | Anmeldevorgang |
recoverable | Passwort zurücksetzen |
rememberable | Bewahren Sie die Anmeldeinformationen im Cookie auf |
trackable | Speichern Sie die Anzahl der Anmeldungen, die Zeit und die IP-Adresse |
validatable | Überprüfung der E-Mail-Adresse und des Passworts |
Standardmäßig sind alle Funktionen außer `trackable
`aktiviert.
app/models/user.rb
class User < ApplicationRecord
# Include default devise modules. Others available are:
# :confirmable, :lockable, :timeoutable, :trackable and :omniauthable
devise :database_authenticatable, :registerable,
:recoverable, :rememberable :validatable
end
Da diesmal nur "Anmelden / Abmelden" verwendet wird, nehmen Sie die folgenden Änderungen vor.
registrierbarer Anmeldevorgang
(Unnötige Funktion)
Wiederherstellbares Passwort zurückgesetzt
(Unnötige Funktion)
app/models/user.rb
class User < ApplicationRecord
# Include default devise modules. Others available are:
# :confirmable, :lockable, :timeoutable, :trackable and :omniauthable
devise :database_authenticatable, :rememberable, :validatable
end
Überprüfen Sie zur Bestätigung das Routing mit "Rake-Routen" im Terminal.
new_user_session GET /users/sign_in(.:format) devise/sessions#new
user_session POST /users/sign_in(.:format) devise/sessions#create
destroy_user_session DELETE /users/sign_out(.:format) devise/sessions#destroy
Es ist nur das Routing verfügbar, das für "Anmelden / Abmelden" verwendet wird.
[Rails] Einstellung des Sitzungszeitlimits im Gerät
Recommended Posts