2

我正在开发一个 Rails 3.2 应用程序。当用户注册或我在管理面板中创建用户帐户时,会向他们发送一封欢迎电子邮件。我想包含一个链接,用户可以单击该链接进入密码重置页面(他们可以在其中设置/更改密码)。

所以我想做的基本上是手动创建一个重置密码令牌,创建一个指向重置密码页面的链接(他们选择一个新密码)并将其包含在欢迎电子邮件中。我不想发送两封电子邮件(欢迎和重置密码)。

我想其中一些代码可以使用,但我不知道如何使用。

https://github.com/plataformatec/devise/blob/master/lib/devise/models/recoverable.rb

我怎样才能做到这一点?

感谢所有帮助!

4

1 回答 1

0

只需要做与此类似的事情,并认为如果有人偶然发现此问题,我会发布答案。假设您已正确设置设计,您需要做的就是确保用户存在于数据库中,然后重定向到设计路线。我在这里利用了他们的代码:goo.gl/cE5USm。
def password_reset_controller user = User.find_by_email( params[:email] ) if user redirect_to password_path(:user, email: user.email) else # do something different end end 如果您在控制台中调用 password_path(:user, email: user.email) -> "/users/password?email='email'"

编辑:或者,您可以只使用 goo.gl/aPQ8MU 中的 user.send_reset_password_instructions

于 2014-07-23T18:30:53.637 回答