Als ich devise in Rails5 einführte, hatte ich das Problem, dass der von devise generierte Bildschirm zur Kennwortänderung nicht richtig angezeigt werden konnte. Daher werde ich ihn als Memorandum belassen.
--Wie wird der Bildschirm zum Ändern des Passworts vor und nach dem Anmelden angezeigt?
Nutzungsumgebung
ruby 2.5.7
rails 5.2.4
Wenn Sie nach der Installation von devise das Routing mit dem Befehl "Rails Routes" auf der Konsole überprüfen, wird es in der folgenden Form angezeigt.
$ rails routes
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
destroy_user_session DELETE /users/sign_out(.:format) devise/sessions#destroy
new_user_password GET /users/password/new(.:format) devise/passwords#new
edit_user_password GET /users/password/edit(.:format) devise/passwords#edit
user_password PATCH /users/password(.:format) devise/passwords#update
PUT /users/password(.:format) devise/passwords#update
POST /users/password(.:format) devise/passwords#create
cancel_user_registration GET /users/cancel(.:format) devise/registrations#cancel
new_user_registration GET /users/sign_up(.:format) devise/registrations#new
edit_user_registration GET /users/edit(.:format) devise/registrations#edit
user_registration PATCH /users(.:format) devise/registrations#update
PUT /users(.:format) devise/registrations#update
DELETE /users(.:format) devise/registrations#destroy
POST /users(.:format) devise/registrations#create
Zu diesem Zeitpunkt ist das Routing für die Anzeige des Kennwortänderungsbildschirms
edit_user_password GET /users/password/edit(.:format)
Es mag so aussehen (ich habe es getan), aber es gibt tatsächlich ein anderes Routing für den Änderungsbildschirm. das ist
edit_user_registration GET /users/edit(.:format)
ist. Der Unterschied zwischen den beiden ist
edit_user_password GET /users/password/edit(.:format) #Bildschirm zur Kennwortänderung vor der Anmeldung
edit_user_registration GET /users/edit(.:format) #Bildschirm zur Kennwortänderung nach der Anmeldung
... anscheinend ...
Lassen Sie uns jeden korrekt verwenden, z. B. den Pfad in "link_to" angeben (obwohl ich der Meinung bin, dass grundsätzlich nur der nach dem Login verwendet wird).
Recommended Posts