【问题标题】:In Rails Devise gem how to modify the send_reset_password_instructions method?在 Rails Devise gem 中如何修改 send_reset_password_instructions 方法?
【发布时间】:2014-05-29 04:13:39
【问题描述】:

我想修改send_reset_password_instructions 方法,以便我可以通过它向url 发送一些额外的参数。然后我可以在 url 中读取该参数,如果它存在,我将以不同的方式设置视图(和邮件程序)的样式。

我真正需要做的是发送重置密码而不是确认电子邮件。我已经让我的应用程序发送重置密码而不是确认,但现在我需要编辑邮件程序并且视图会有所不同。我该怎么做?

【问题讨论】:

  • 你要求两件事...你想要哪一个? :) 如果你想要两个 - 也许两个问题(每个一个)会更好?

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


【解决方案1】:

好的,所以你的问题有 2 个部分。

  • 重写send_reset_password_instructions 方法:

    1. 访问Devise Github page 并找到定义该方法的位置。
    2. 在您自己的应用文件夹中创建一个具有相同名称和相对路径的文件。例如:Devise 有这个助手 app/mailers/devise/mailer.rb,如果你想覆盖它,你可以在你自己的 app 目录中创建它。
    3. 根据需要复制方法并覆盖。 Devise 将自动拾取文件。
  • 编辑视图/邮件:你只需要运行这个命令:

    rails generate devise:views

您将在您的视图文件夹中看到邮件视图。

希望这会有所帮助:)

【讨论】:

    猜你喜欢
    • 2012-10-22
    • 2017-02-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-06-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多