Rails/Devise - So zeigen Sie Registrierungsinformationen (nicht nur bearbeiten)
-
26-09-2019 - |
Frage
Ich habe heute Devise installiert und alles funktioniert bisher gut. Das einzige, was Devise nicht zu bieten scheint, ist eine Aktion "Registrierung#show", in der die Benutzerinformationen angezeigt werden (anstelle der Registrierungs -Bearbeitungsseite). Ich habe versucht, den Registrierungskontroller zu überschreiben, aber den Fehler erhalten: "Unbekannte Action-AbstractController :: ActionNotFound" für alle Aktionen auf diesem Controller. Weiß jemand, wie man die Profilinformationen anzeigt? Vielen Dank!
class RegistrationsController < Devise::RegistrationsController
def new
super
end
def create
super
end
def show
end
def update
super
end
end
Lösung
Ich würde versuchen, einen neuen Controller basierend auf meinem Authentifizierungsmodell zu erstellen. Nehmen wir an, mein Authentifizierungsmodell ist Benutzer. Erstellen Sie einfach einen neuen Controller und erstellen Sie eine Show -Seite. So etwas sollte funktionieren.
class UsersController < ApplicationController
def show
@user = User.find(params[:id])
# If this show page is only for the currently logged in user change it to @user = current_user
end
end
Fügen Sie jetzt einfach eine Ansicht hinzu, in der Sie die Attribute, die Sie sehen möchten, und Sie sollten erledigt werden :)
Andere Tipps
Infact Devise By-Ityp bietet eine großartige Möglichkeit, es anzupassen.
Versuchen Sie zu rennen:-
"rails generate devise_views" or in newer version of devise try the below
"rails generate devise:views" .
Dadurch werden alle Ansichten generiert, die Sie bearbeiten, anpassen und die Route festlegen können.
Probieren Sie diesen Link aus http://asciicasts.com/episodes/210-customizing-tevise Für mehr Information.