Şu anda ActionMailer'dan e-posta göndermekle ilgili bir sorun yaşıyorum. Hangi maillerden olursa olsun, sistemimden gönderilen her e-postaya özel bir başlık eklemeye çalışıyorum. Üstbilgi, e-postayı hangi kişiyle aldığına dair bilgi içerir, bu nedenle posta göndericisinin varsayılanlarında ayarlanamaz, ancak her bir e-postada bu üstbilgiyi ayarlamanız gerekmekten kaçınmak isterim.Mail :: Başlık mesajlarını değiştirme ActionMailer tarafından döndürülen ileti
Burada şu anda kurdunuz ne:
candidates.each do |c|
mail = mailer_class.send(action.to_sym, c, params)
recip = email_recipients.create!(:contact => c, :subject => mail.subject)
mail.headers['X-SMTPAPI'] = {:unique_args => {:email_recipient_id => recip.id, :database => Apartment::Database.current_database },
:category => "#{mailer}-#{action}" }.to_json
mail.deliver
end
sorundur, herhangi bir değişiklik görünmüyor bir Mail::Message
ait headers
karma bir tuşa ayarı.
m.header = m.header.to_s + "\nBlah: Blah"
Ama dürüst olmak gerekirse, bu biraz hacky hissediyor:
elle şöyle başlık özelliğini ayarlayarak bir başlık ayarlamak için bir yol buldum. Bunu gerçekleştirmek için daha iyi bir desen biliyor mu? Eğer başlatıcılardizin eklemek görünüyor yüklenen bir dosyayı varsayılan başlıklarıyla ActionMailer :: Base genişleten bir sınıf oluşturabilir
SMTP başlıklarına json gönderiyor musunuz? – farnoy
Evet. Biraz garip ama kullanıyorum bir sağlayıcı tarafından belirlenir. –