2011-01-06 14 views
6

Я хочу, чтобы иметь возможность прикреплять файл, который я генерирую (на лету, я не хочу сохранять файл на своем сервере) и отправлять его по электронной почте.Вложения электронной почты

У меня есть текст все сделано, но я потерял о том, как прикрепить файл к электронной почте с помощью Sendmail

Спасибо

ответ

19

См http://railscasts.com/episodes/206-action-mailer-in-rails-3

def registration_confirmation(user) 
    @user = user 
    attachments["rails.png"] = File.read("#{Rails.root}/public/images/rails.png") 
    mail(:to => "#{user.name} <#{user.email}>", :subject => "Registered") 
end 
+2

замените File.read (...) на сгенерированные данные на лету. – ffoeg

+1

Но если вы отправляете формат разного формата, например, csv, xls и т. Д., То вы должны также указать часть тела, иначе вложение не будет правильно отправлено по почте –

+0

было бы неплохо, если бы вы согласились с моим ответом, если это вам помогло – Lichtamberg

1

Для альтернативного рассмотрения, я лично имел хороший опыт использования Pony для электронной почты. Это, случается, имеет много зависимостей от драгоценных камней, но с ними очень приятно работать. См. README для получения дополнительной информации.

Смежные вопросы