Hi.
Hab mal wieder ein Problem. Diesmal mit dem ActionMailer
Ich will eine Newsletter versenden. Der eigentliche Newsletter wird als
Pdf immer mitgeschickt. Doch das System wird auch für kurze InfoMails
verwendet werden ohne Attachment.
Hab dafür 2 Methoden einmal mit und einmal ohne Attachment.
class NewsletterMailer < ActionMailer::Base
def newsletter_with_attachment(data, sent_at = Time.now)
subject “Newsletter - #{data[:newsletter].title}”
recipients data[:recipient].email
from ‘[email protected]’
sent_on sent_at
content_type "multipart/alternative"
part content_type => "text/html",
:body => render_message("newsletter_with_attachment",
:newsletter => data[:newsletter],
:recipient => data[:recipient])
attachment "application/octet-stream" do |a|
a.body = data[:attachment].read
a.filename = data[:attachment].original_filename
end
end
def newsletter_without_attachment(data, sent_at = Time.now)
subject “Newsletter - #{data[:newsletter].title}”
recipients data[:recipient].email
from ‘[email protected]’
sent_on sent_at
body :newsletter => data[:newsletter], :recipient =>
data[:recipient]
content_type ‘text/html’
end
end
In meinem views/newsletter_mailer/ hab ich 2 Dateien:
newsletter_with_attachment.html.erb
newsletter_without_attachment.html.erb
Jedenfalls funktioniert das ohne Attachment anstandslos.
Bei der mit attachment wird zwar das attachment mitgesendet aber der
body aus dem erb template wird nicht angezeigt. wenn ich das attachment
auskommentiere schon…
hatte in einem vorigen versuch auch schon probiert es so zu machen mit
attachment ohne sonderlichen erfolg:
def newsletter_without_attachment(data, sent_at = Time.now)
subject “Newsletter - #{data[:newsletter].title}”
recipients data[:recipient].email
from ‘[email protected]’
sent_on sent_at
body :newsletter => data[:newsletter], :recipient =>
data[:recipient]
content_type ‘text/html’
attachment "application/octet-stream" do |a|
a.body = data[:attachment].read
a.filename = data[:attachment].original_filename
end
end
Benutze rails 2.3.2
hab den content type umgestellt von
multipart/alternative
auf
multipart/mixed
und dann hat er mir zumindest den body angezeigt und das attachment war
auch da. jedoch zeigte er mir im body sämtliche html tags an. hab aber
doch beim part explizit stehn das der content_type text/html ist?
jmd eine idee?
lg