Question

I've read through the docs and still am unclear on how to actually use these templates in mandrill.

Currently I have a rails app with the standard Rails mailers (located in: App > views > welcome_mailer > welcome_email.html.erb) being sent through the Mandrill SMTP setup. This is working fine.

Now, I have a template in Mandrill ready to go, now what?

How do I actually use this template, do I need to adjust the code on my app to make a different call, or do I need to do something on the mandrill dashboard to tell it to use the new template instead of the rails version being sent now.

How do I actually use this template?

Thank you in advance.

Was it helpful?

Solution

You can use mandrill_mailer gem, inherit your mailer from MandrillMailer::TemplateMailer and then send it as usual InvitationMailer.invite(invitation).deliver.

OTHER TIPS

Without any gems :

To use mandrill template you first need to create one in your mandrill account and then in your mailer add a correct header which tells the name of the template. Then mandrill will by magic automatically call that template.

Example:

# app/mailers
class CardMailer < ActionMailer::Base
  default from: "admin@domain.ch"

  def welcome(card)
    mail to:      card.responsable.email,
         from:    "\"Andrey\" <admin@domain.ch>",
         subject: 'Welcome in my website'
    headers['X-MC-MergeVars'] = "{\"TYPE\":\"#{card.card_type.name}\"}" # variables
    headers['X-MC-Template'] = "welcome"  # template
    headers['X-MC-AutoText'] = 1 # generate text version
    headers['X-MC-InlineCSS'] = "true" # inline css
  end
end

In my case, it uses my "welcome" template. Just use the name of your mandrill template.

As you can see, there are many other headers available. See the full-list here.

Note : even if you don't use rails template any more, you still need one in your view.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top