【问题标题】:Devise URL Helpers are not being generated on reset password procedure在重置密码过程中未生成设计 URL 帮助程序
【发布时间】:2014-02-20 14:59:36
【问题描述】:

我正在尝试在我的 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 是“user”,new_session_path("user")routes.rb 文件上返回匹配的路由new_session_path。预期的响应应该是new_user_session_path

Devise 上有一个 URL Helper,应该将 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。

最好的问候!

【问题讨论】:

    标签: ruby-on-rails ruby ruby-on-rails-3 devise


    【解决方案1】:

    问题是我有一个SessionsController,它覆盖了 Devise SessionsController 和路由路径。重命名我的 SessionsController 后它工作正常。

    【讨论】:

      猜你喜欢
      • 2010-11-29
      • 1970-01-01
      • 2019-09-19
      • 2015-04-08
      • 2013-06-10
      • 1970-01-01
      • 1970-01-01
      • 2016-04-10
      • 2022-11-22
      相关资源
      最近更新 更多