2011-05-12 6 views
5

Éstos son mis rutas Idear:Diseñar acción edit_account_password me redirecciona a la raíz

devise_for :accounts, :path_names => { :sign_up => "new" } do 
    get "sign_in",   :to => "devise/sessions#new" 
    get "sign_out",   :to => "devise/sessions#destroy" 
    get "/change_password", :to => "devise/passwords#edit" 
end 

y la salida de mi rake routes:

 account_password POST /accounts/password(.:format)    {:controller=>"devise/passwords", :action=>"create"} 
    new_account_password GET /accounts/password/new(.:format)   {:controller=>"devise/passwords", :action=>"new"} 
    edit_account_password GET /accounts/password/edit(.:format)   {:controller=>"devise/passwords", :action=>"edit"} 
         PUT /accounts/password(.:format)    {:controller=>"devise/passwords", :action=>"update"} 

Así que la ruta change_password no está en su lugar y /change_password simplemente redirige yo a la ruta de acceso raíz. Por favor, ayúdame a entender por qué o me lastimaré a mí mismo. Gracias.

+0

tienen el mismo problema, a encontrar la solución? –

+0

heh, extraño, cuando estoy desconectado y tratando de llegar a esta página, lo entiendo! wtf ... –

Respuesta

11

Bien, descubrí el problema. La contraseña de edición es del módulo Recuperable, tiene como objetivo ayudar al usuario a recuperar su contraseña si se olvida, y no a un usuario registrado para cambiar su contraseña. Puede usar el registro/edición en su lugar.

0

No estaba seguro de si estaba hablando sobre el comportamiento después de que un usuario cambia su contraseña a través de la acción de contraseña de cambio enrutada mencionada anteriormente. Si es así, por favor considere esto de preguntas y respuestas que pueden o bien responder a su pregunta o darle una mano a mano por lo que puede encontrar:

Devise logging out automatically after password change

Cuestiones relacionadas