我正試圖在我的Rails應用程序上實現Devise的重置密碼功能。它工作正常,但在發送電子郵件指令後,它重定向到一個錯誤的URL(api/sessions/new
,而不是users/sign_in
)。看好色器件代碼,我發現,它調用此方法來獲取網址:在重置密碼過程中沒有生成設計URL幫助程序
# The path used after sending reset password instructions
def after_sending_reset_password_instructions_path_for(resource_name)
new_session_path(resource_name) if is_navigational_format?
end
的RESOURCE_NAME是「用戶」和new_session_path("user")
上routes.rb
文件返回匹配的路由new_session_path
。預期的響應應該是new_user_session_path
。
有設計上的網址助手應該翻譯new_session_path(:user)
到new_user_session_path
,但它不工作:http://www.rubydoc.org/github/plataformatec/devise/Devise/Controllers/UrlHelpers#generate_helpers%21-class_method
有誰知道爲什麼嗎?我應該手動調用generate_helpers!方法 ?
我的Rails版本是3.2.14和Devise 3.2.2。
此致敬禮!