Отображение экрана редактирования пароля разработчика
В моем приложении rails 3, использующем devise, я хочу предоставить ссылку для пользователей, чтобы изменить их пароль.
У меня есть стандартная ссылка, которая указывает на:/users/password/edit... Выход журнала ниже
Started GET "/users/password/edit" for 127.0.0.1 at 2011-08-10 10:11:46 -0700
Processing by Devise::PasswordsController#edit as HTML
User Load (0.6ms) SELECT "users".* FROM "users" WHERE "users"."id" = 3 LIMIT 1
Redirected to http://localhost:3000/
Completed 302 Found in 309ms
Почему рельсы перенаправляются? Почему я не могу показать страницу редактирования пароля? Благодаря
Ответы
Ответ 1
Devise::PasswordsController#edit
предназначен для пользователей, не прошедших проверку подлинности, которые хотят изменить свой пароль с помощью токена reset. Этот токен reset был ранее отправлен пользователю по электронной почте (Reset инструкции по паролю). Если пользователь уже вошел в систему, эта страница пароля редактирования всегда будет перенаправляться на путь после входа, поскольку она не должна быть доступна для аутентифицированных пользователей.
Я предполагаю, что вы хотите, чтобы пользователь мог изменить свой пароль после. Для этого вам нужно использовать Devise::RegistrationsController#edit
.