Rails アプリ用の非常に単純なメール システムを作成しています。RESTful 認証を使用しています。ユーザーがサインアップしたときとユーザーがパスワードを忘れたときに同じメールを送信する、かなり従来の設定です。頭を包み込むことができないように見える問題が1つだけあります。
「新しいユーザー」のメールはユーザー コントローラーから送信され、「パスワードを忘れた」メールはパスワード コントローラーから送信されますが、両方のインスタンスで同じメール テンプレートを使用したいと考えています。
メールは次のようになります。
<%=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 が通らない。
回答ありがとうございます。明確にするために言うと、この場合、セキュリティは実際には問題ではありません。そのため、パスワードをリセットするプロセスを実行するよりも、忘れたパスワードをプレーンテキストで送信できる方がよいでしょう。通常はそうではありません。