Rails 1.2 e ActionMailer con contenuti multipart/alternative
Fino all’uscita del Rails 1.2.1 per mandare le mail sia testuali che html si doveva fare qualcosa di questo genere nel notifier:
1 2 setup_email 3 @subject += "Come spedire una mail sia in html che in formato testuale" 4 content_type "multipart/alternative" 5 part :content_type => "text/plain", 6 :body => render_message("message_plain") 7 part :content_type => "text/html", 8 :body => render_message("message_html") 9 end 10 11 protected 12 13 @recipients = "dest@riprova.it" 14 @from = "prova@prova.it <Sig. Prova>" 15 @subject = "[Prova] " 16 @sent_on = Time.now 17 end
Chiaramente ci dovevano essere due viste .rhtml una chiamata message_text ed una message_html, con i contenuti della mail sia in formato testuale che in formato html; stando attenti a come scrivere l’html così da consentire a qualunque programma di posta e sulla web mail di vederle correttamente.
Gli utlimi due progetti curati abbiamo iniziato a svilupparli direttamente in rails 1.2.1, e alcune cosette che avevamo fatto non funzionano correttamente, tipo l’invio delle mail multipart/alternative.
Se volete inviare mail multipart/alternative non dovete fare altro che, nel vostro modello “notifier”, impostare i parametri per l’invio come il recipient, il from, il subject e chiamare le viste come la funzione aggiungendo il content type direttamente nel nome del file.
1 2 setup_email 3 @subject += "Come spedire una mail sia in html che in formato testuale" 4 end 5 6 protected 7 8 @recipients = "dest@riprova.it" 9 @from = "prova@prova.it <Sig. Prova>" 10 @subject = "[Prova] " 11 @sent_on = Time.now 12 end
I file da inviare si chiameranno così:
- message.text.plain.rhtml
- message.text.html.rhtml
E vedrete che partiranno e verranno lette senza alcun problema.


Lo proverò.
Sto cercando di costruire un form contatti per mephisto, ma non capisco se sia già predisposto o se l’idea di un form contatti non sia presa in considerazione.
Non c’è documentazione a riguardo.
Grazie ragazzi per il blog. Ottimo lavoro (anche dal lato estetico).
Vedrai che mandare le mail degradanti con rails 1.2 è molto più veloce di prima!!
Mephisto non ha un form dei contatti, credo, se vai a vedere tra i suoi modelli c’è solo uno user_notifier che manda la mail del forgot password.