Rails 3.1.4 アプリで動作する HTML メールのみを使用していましたが、テキストのみのメールを追加してマルチパートにすることにし、メールが空白になりました。また、Sendgrid の Heroku アドオンも使い始めました。それが含まれているかどうかはわかりません。
heroku ログを見ると、.erb と .html.erb の両方のビューが正常にレンダリングされ、エラーが表示されていないことがわかります。メールは届くが、Yahoo!で本文が空欄。そしてHotmailでは、それは言うだけです(これ以上テストを行いませんでした):
This is a multi-part message in MIME format...
----
ここに私のメーラーがあります:
class Notifier < ActionMailer::Base
helper :application
default_url_options[:host] = "foo.com"
# email on new user registration to verify user
def verification_instructions(user)
subject "Email Verification"
from 'Bar <info@bar.com>'
@user = user
recipients "#{user.first_name} <#{user.email}>"
sent_on Time.now
@url = "http://bar.com/user_verifications_controller/show/#{user.perishable_token}"
end
テキスト版 (.erb)
Hi <%= @user.username %>, thanks for signing up
Please click the following link to verify your email address:
<%= @url %>
If the above URL does not work, try copying and pasting it into your browser. If you continue to have problems, please feel free to contact us.
また、開発中のコンソールからメールを送信すると、ログを調べて、メールがレンダリングされていることを確認できます。 出力をここに置きます。別のメールを試して、特定のメールに固有の問題ではないことを確認しました2
よろしくお願いいたします。