Je ne peux pas vous diriger vers la modification_USER_PASSWORD_PATH sur mon projet. Cela vient de voir à la maison. Quelqu'un peut-il assister? P>
<% = link_to "Modifier le mot de passe", edit_user_password_path (actuel_user)%> p>
6 Réponses :
résultat de mes routes de râteau est p>
user_password post /users/password(.:Format){:Action=>"Create ",: Controller =>" Devise / Mots de passe "} P>
new_user_password get /users/password/new(.:Format) {: action => "Nouveau" ,: contrôleur => "Devise / Mots de passe"} P>
edit_user_password get /users/password/edit(.:Format) {: action => "Modifier" ,: contrôleur => "Devise / Mots de passe"} P>
mettre /users/users/password(.:format) {: action => "mise à jour" ,: contrôleur => "Devise / Mots de passe"} P>
Ne mettez pas vos commentaires dans les réponses, s'il vous plaît. Ce n'est pas correct.
montre-nous votre intégralisation routes.rb code>, il est possible que vous ayez une règle là-bas qui achemine des cas de bord à la maison. Je l'ai déjà vu auparavant. P>
Je pense que concevez GEM Reroutes à la racine à chaque fois qu'il ne trouve pas de smart p>
devise_for: utilisateurs Ressources: utilisateurs p>
racine: to => "pubpages # page d'accueil" p>
La réponse à cette question explique le problème: Affichage de l'écran du mot de passe de Devise Modifier P>
En bref, le mot de passeScontroller est utilisé pour la réinitialisation du mot de passe lorsqu'un utilisateur n'est pas connecté. Si vous êtes connecté, il vous redirige vers le chemin racine. P>
Afin de modifier le mot de passe, vous souhaitez utiliser la liste des enregistrements. P>
J'ai fait face au même problème p>
new_user_password_path and edit_user_password_path, les deux redirigent vers la page racine. Si vous êtes connecté, il se redirigera vers la page racine et si l'utilisateur n'est pas connecté, il vous demandera de vous connecter, puis de la redirection de la page racine. P>
Pour cela, vous devez utiliser Edit_user_registration_Path of Devise InscriptionController. P>
Devise :: PasswordScontroller # Modifier code>
est destiné aux utilisateurs non authentifiés, il va donc certainement passer au chemin de racine qui est après le chemin Signer_in, car vous êtes déjà SIGN_IN. Vous devez donc utiliser Devise :: InscriptionsController # Modifier code> Pour changer votre mot de passe, mais vous pouvez ouvrir ce lien dans le mode Incognito ou que vous pouvez essayer de supprimer vos cookies de navigateur. P>
Quel est le résultat de «roulages» dans la console?