3
使用Rails 2.3.14如何使用ActionMailer發送html電子郵件?
我的電子郵件ERB: data.html.erb:
<% @data.each do |error| %>
<table>
<% error.each_pair do |k, v| %>
<tr>
<td>
<%= k %>
</td>
<td>
<%= ap v %>
</td>
</tr>
<% end %>
</table>
<br />
<% end %>
我可以接收電子郵件,但是當我做,它顯示爲純文本 - 而不是渲染HTML。
行動郵件程序配置:
config.action_mailer.raise_delivery_errors = true
# Send emails during development
config.action_mailer.perform_deliveries = true
ActionMailer::Base.delivery_method = :sendmail
更新:在我的遞送方法來指定內容類型:
def data(data, sent_at = Time.now)
Time.zone = 'Eastern Time (US & Canada)'
content_type 'text/html'
subject "[#{RAILS_ENV}] An error has occurred - #{Time.now.to_s("%B %d, %Y")}"
recipients "[email protected]"
from AppConfig['from_email']
sent_on sent_at
@body = {:data => data}
end
如果您在收件箱中查看電子郵件的來源,Content-Type標頭將顯示什麼內容? – d11wtq 2012-04-24 14:47:44
text/plain;字符集= UTF-8。我如何製作html? – NullVoxPopuli 2012-04-24 14:50:51
它應該「只是工作」。你是否100%在目錄中沒有data.text.erb模板?您是否在郵件程序中手動調用任何渲染方法? – d11wtq 2012-04-24 14:56:30