2017-12-27 45 views
0

비밀번호 재설정 기능을 devise를 통해 구현했지만 링크를 따라 이메일을 받고 비밀번호를 재설정하면 다음 오류가 발생합니다 :Devise - 비밀번호를 잊었습니다 - 경로가 [GET]/users/password와 일치하지 않습니다.

[GET] "/ users/password"와 일치하는 경로가 없습니다. (라우팅 오류)

라우팅은 devise를 통해 이루어 집니까?

routes.rb에 내 코드는 다음과 같습니다

devise_for :users, controllers: { 
      sessions: 'users/sessions', 
      passwords: 'users/passwords', 
      registrations: 'users/registrations' 
     } 

내가 컨트롤러> 사용자> passwords_controller.rb에서 아무것도 변경하지 않았다하지만 경우에 그것은 다음과 같습니다, 그것을보고 도움 :

class Users::PasswordsController < Devise::PasswordsController 
    # GET /resource/password/new 
    # def new 
    # super 
    # end 

    # POST /resource/password 
    # def create 
    # super 
    # end 

    # GET /resource/password/edit?reset_password_token=abcdef 
    # def edit 
    # super 
    # end 

    # PUT /resource/password 
    # def update 
    # super 
    # end 

    # protected 

    # def after_resetting_password_path_for(resource) 
    # super(resource) 
    # end 

    # The path used after sending reset password instructions 
    # def after_sending_reset_password_instructions_path_for(resource_name) 
    # super(resource_name) 
    # end 
end 

내가 무엇이 잘못되었거나 잘못 되었습니까?

액션 '암호'UsersController (알 수없는 행동)

어떤 도움을 찾을 수 없습니다 :

내가 routes.rb에 "GET '사용자/암호'를"추가

, 나는 오류 높게 평가 될 것입니다!

+0

질문에 대한 해결책을 편집하지 마십시오. 대신 아래 답변을 해결책으로 게시하십시오. 이 사이트의 형식은 항상 "맨 위 질문, 아래 답변"입니다. –

답변

1

하면 사용자 모델에 recoverable이 있는지 확인 :

class User 
    devise :database_authenticatable, 
     :registerable, 
     :validatable, 
     :recoverable 
end 

그것은 도움이되지 않을 경우 알려 주시기 바랍니다.

+1

나는 이미 불행히도, 실수가 될 수 없다. – Christina

+0

이 명령을 실행하고 출력을 공유 할 수 있습니까? 레이크 노선 | grep users/password 그리고 암호 컨트롤러가 사용자 디렉토리에 존재해야합니다. –