Neigaard
Neigaard

Reputation: 4064

Send HTML emails with inline images with ActionMailer

I have a simple ActionMailer class like this:

class MyMailer < ActionMailer::Base
  def mail(from, to, cc, bcc, subject, message, sent_at = Time.now)
    @subject = subject
    @recipients = to
    @from = from
    @cc = cc
    @bcc = bcc
    @sent_on = sent_at
    @body["message"] = message
    @headers = {}
  end
end

And I ue it like this from a controller:

MyMailer.deliver_mail(mail.from, mail.to, mail.cc, mail.bcc, mail.subject, mail.message)

I prefer to keep it simple with no templates or such, and it is a webservice with no views.

How do I change it to be able to send HTML mails with embedded images (in img tags i mean)? I need to attach the images woth the correct mime-type and also set the body with the correct mime-type, but how?

Thank you

Upvotes: 3

Views: 10616

Answers (2)

Don Law
Don Law

Reputation: 1329

If you are using rails3, it is dead easy, as explained in section 2.3.3 "Making Inline Attachments" in this ruby on rails guide

Upvotes: 5

Related Questions