2010-06-16 9 views
7

Ho trovato questo gioiello un modo semplice e veloce per inviare posta ma non riesco a inviare alcun codice HTML. Se scrivo quanto segue:Problemi nell'invio di html nell'e-mail con Pony gem

Pony.mail(
    :to => message[:to], 
    :from => @account[:from], 
    :subject => message[:subject], 
    :content_type => 'text/html', 
    :html_body => "<h1>hey there!</h1>", 
    :via => :smtp, 
    :smtp => { 
    :host => MY_HOST, 
    :port => PORT, 
    :auth => AUTH, 
    :user => MY_USER, 
    :password => MY_PASSWORD, 
    :tls => true }) 

Il codice sopra riportato invia una mail ma il messaggio sembra essere vuoto in gmail.

Qualsiasi aiuto sarebbe molto apprezzato su questo.

Grazie.

risposta

15

È necessario specificare il tipo di contenuto come chiave all'interno di una chiave di intestazione. E quindi puoi semplicemente inserire il codice HTML in un corpo, non un corpo HTML.

Esempio:

Pony.mail(
    :to => message[:to], 
    :from => @account[:from], 
    :subject => message[:subject], 
    :headers => { 'Content-Type' => 'text/html' }, 
    :body => "<h1>hey there!</h1>", 
    :via => :smtp, 
    :smtp => { 
    :host => MY_HOST, 
    :port => PORT, 
    :auth => AUTH, 
    :user => MY_USER, 
    :password => MY_PASSWORD, 
    :tls => true })