вложение не в моем почтовом ящике - PullRequest
5 голосов
/ 29 октября 2011

При использовании Rails ActionMailer с несколькими сообщениями электронной почты я создал оба:

approve_trade_email.html.erb

И

approve_trade_email.text.erb

Я получаю хорошо отформатированное письмо в формате HTML в своем почтовом клиенте (Mac OSX), но при проверке моей учетной записи Gmail на наличие того же письма я получил пустое тело с вложением без имени с несколькими элементами внутри?

Помощь

Почему я получаю это в Gmail?

ТНХ

Joel

ЗДЕСЬ НЕИМЕННОЕ ПРИЛОЖЕНИЕ В GMAIL:

----==_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--

1 Ответ

2 голосов
/ 23 февраля 2012

Я получил ту же проблему и нашел решение:

Это ошибка в старом ActionMailer API в Rails 3, которая не включает определение составной границы в почтовом заголовке.

см.: 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
...