Я прочитал весь официальный путеводитель here и около 5 вопросов на SO, которые описывают эту проблему для Rails 3 и Rails 4.Rails 5.0.1 - ActionMailer с MailGun, установка «Noname» для файла, когда непосредственно прикрепление base64 строку
This question для Rails 5, но он использует фактический файл, а не закодированную строку.
Это мой почтовый код (и да, у меня есть обе настройки просмотров). Письмо приходит отлично, с прилагаемым PDF.
def pdf_quote(proposal)
@proposal = proposal
email_with_name = %("#{@proposal.first_name} #{@proposal.last_name}" <#{@proposal.email}>)
filename = "QD-#{@proposal.qd_number}_#{@proposal.last_name}.pdf"
attachments[filename] = {
mime_type: 'application/pdf',
encoding: 'Base64',
content: @proposal.pdf_base64
}
mail(
to: email_with_name,
from: 'Floorbook UK <email address>',
subject: 'Your Personal Flooring Quote is attached',
sent_on: Time.now
)
end
В Gmail прикрепление называется «Noname» и в Postbox это называется «pb_mime_attachment.pdf»
Как я могу получить ActionMailer использовать имя файла я предоставить?
Обратите внимание, что я использую MailGun (mailgun-ruby gem 1.1.4), чтобы отправить электронное письмо, так что это может быть жемчужиной.