我正在为 Rails 应用程序编写一个非常简单的邮件系统。我正在使用 RESTful 身份验证。这是一个相当传统的设置,当用户注册和忘记密码时,我会发送相同的电子邮件。我只是遇到了一个我似乎无法解决的问题。
我想对这两个实例使用相同的电子邮件模板,即使“新用户”电子邮件将来自用户控制器,而“忘记密码”电子邮件将来自密码控制器。
电子邮件看起来像这样:
<%=h @user.name %>,
Your membership details:
Username: <%=h @user.login %>
Password: <%=h @user.password %>
当用户注册时,这工作得很好,导致一封看起来像这样的电子邮件:
Bryan,
Your membership details:
Username: bryan
Password: password
不幸的是,当尝试使用此模板从密码控制器发送“忘记密码”电子邮件时,一切都会中断。然而,令我困惑的是,它只是有点中断:
Bryan,
Your membership details:
Username: bryan
Password:
换句话说,@user.name 仍然有效,@user.login 也是如此。但是由于某种原因,在这种状态下@user.password 没有通过。
感谢您的回复。需要明确的是,在这种情况下,安全性确实不是问题,因此,能够以纯文本形式发送忘记的密码而不是通过重置密码过程会更好,但我很感激这一点通常情况并非如此。