2013-02-26 13 views
5

Używam Mandrill w Ruby API Gem i mają postępować prosty szablon dla testowania:Mandrill API Templating

<html> 

    <body> 
     <h1 mc:edit="header">testastic</h1> 
     <hr/> 
     <br/><br/> 
     <div mc:edit="main_section"></div> 
     <hr/> 
     <div mc:edit="footer"></div> 
    </body> 
</html> 

wzorując się na przewodniku Heroku za mam podążać kod Ruby:

require 'mandrill' 
    m = Mandrill::API.new 
    rendered = m.templates.render 'test-template', [{:header => 'some header text', :main_section => 'The main content block', :footer => '<h3>asdf</h3>'}] 

    mail(:to => "Jayson Lane <[email protected]>", :subject => "Test Email") do |format| 
     format.html { rendered['html'] } 
     #format.text { render "test" } 
    end 

Działa to świetnie, a wiadomość e-mail przesyła mój szablon, ale nie zastępuje szablonu mc: edit variables. Czy czegoś brakuje?

Odpowiedz

9

Musisz utworzyć skrót dla każdego elementu, który chcesz zastąpić. Na przykład, mam ten wnętrze szablon:

<h3 mc:edit="plan_info_name"> </h3> 
    <span mc:edit="plan_info_description"> </span> 
    <span mc:edit="plan_info_benefits"> </span> 

i to na program pocztowy:

mandrill.messages.send_template(template,[ 
    { 
    :name => 'plan_info_name', 
    :content => extra[:membership_info].name 
    }, 
    { 
    :name => 'plan_info_description', 
    :content => extra[:membership_info].long_description 
    }, 
    { 
    :name => 'plan_info_benefits', 
    :content => benefits_list 
    } 
    .... 
+0

niesamowite! dzięki! –

Powiązane problemy