我正在开发Rails 3.2应用程序。当用户注册或在我的管理面板中创建用户帐户时,会向他们发送欢迎电子邮件。我想要包含一个链接,用户可以单击该链接进入密码重置页面(他们可以设置/更改密码)。
所以我想要做的基本上是手动创建一个重置密码令牌,创建一个指向重置密码页面的链接(他们选择一个新密码)并将其包含在欢迎电子邮件中。我不想发送两封电子邮件(欢迎和重置密码)。
我猜这些代码可能会被使用,但我不知道如何使用。
https://github.com/plataformatec/devise/blob/master/lib/devise/models/recoverable.rb
我该怎么做?
感谢所有人的帮助!
答案 0 :(得分: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) - > “/用户/密码?电子邮件= '电子邮件'”
编辑: 或者,您可以使用goo.gl/aPQ8MU中的user.send_reset_password_instructions