电子邮件附件

时间:2011-01-06 00:29:51

标签: ruby-on-rails ruby

我希望能够附加我生成的文件(动态,我不想将文件保存在我的服务器上)并通过电子邮件发送出来。

我已经完成了所有文字,但是我对如何使用sendmail将文件附加到电子邮件感到迷茫

谢谢

3 个答案:

答案 0 :(得分:20)

请参阅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

答案 1 :(得分:6)

您应该使用内置于Rails中的Action Mailer,它支持发送带附件的电子邮件。

对于Rails 3.x - http://guides.rubyonrails.org/action_mailer_basics.html#sending-emails-with-attachments

对于Rails 2.3.8 + - http://guides.rubyonrails.org/v2.3.8/action_mailer_basics.html#sending-multipart-emails-with-attachments

答案 2 :(得分:1)

为了替代考虑,我个人使用Pony获得了很好的电子邮件体验。它恰好有很多gem依赖项,但是使用起来非常好。有关详细信息,请参阅README