5

在使用带有多部分电子邮件的 Rails ActionMailer 时,我创建了两个:

批准贸易电子邮件.html.erb

批准贸易电子邮件.text.erb

我确实在我的邮件客户端 (Mac OSX) 中收到了一封格式良好的 HTML 电子邮件,但是当我检查我的 Gmail 帐户是否有同一封电子邮件时,我得到了一个空的正文,里面有一个带有多部分的无名附件?

帮助?

为什么我会在 Gmail 中收到此信息?

谢谢

乔尔

这里是GMAIL 中的NONAME 附件:

----==_mimepart_4eab3a61bb3a8_10583ff27b4e363c43018
Date: Sat, 29 Oct 2011 01:27:29 +0200
Mime-Version: 1.0
Content-Type: text/plain;
 charset=UTF-8
Content-Transfer-Encoding: 7bit
Content-Disposition: inline
Content-ID: <4eab3a61bc857_10583ff27b4e363c43191@joel-maranhaos-macbook-pro.local.mail>


Do not to forget to make a donation on our Site: /home/index?path_only=false


----==_mimepart_4eab3a61bb3a8_10583ff27b4e363c43018
Date: Sat, 29 Oct 2011 01:27:29 +0200
Mime-Version: 1.0
Content-Type: text/html;
 charset=UTF-8
Content-Transfer-Encoding: 7bit
Content-Disposition: inline
Content-ID: <4eab3a61bd5fa_10583ff27b4e363c432cb@joel-maranhaos-macbook-pro.local.mail>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
   "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>  
<link href="/assets/powerplants.css" media="screen" rel="stylesheet" type="text/css" />

</head>
<body id="email">      

<p><b>Do not to forget to make a donation on our <a href="/home/index?path_only=false">Site</a>.</b></p>

</body>
</html>
----==_mimepart_4eab3a61bb3a8_10583ff27b4e363c43018--
4

1 回答 1

1

我遇到了同样的问题并找到了解决方案:

这是 Rails 3 的旧 ActionMailer API 中的一个错误,它不包括邮件标头中的多部分边界定义。

见:https ://github.com/rails/rails/pull/3090

你只需要使用新的 API(使用mail方法)

class UserMailer < ActionMailer::Base
  default :from => "notifications@example.com"

  def welcome_email(user)
    @user = user
    @url  = "http://example.com/login"
    mail(:to => user.email, :subject => "Welcome to My Awesome Site")
  end
end
于 2012-02-23T15:27:15.073 回答