2010-06-16 5 views
7

Ich habe dieses Juwel gefunden, um eine große und einfache Möglichkeit, um E-Mail senden, aber ich kann nicht scheinen, senden Sie keine HTML in es. Wenn ich Folgendes schreibe:Probleme beim Senden von HTML in E-Mail mit Pony Juwel

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 }) 

Der obige Code sendet eine E-Mail, aber die Nachricht scheint in Gmail leer zu sein.

Jede Hilfe wäre sehr dankbar für diese.

Danke.

Antwort

15

Sie müssen den Inhaltstyp als Schlüssel innerhalb eines Header-Schlüssels angeben. Und dann kannst du deinen HTML-Code einfach in einen Body einfügen, nicht in einen html_body.

Beispiel:

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 }) 
Verwandte Themen