2012-09-21 13 views

cevap

17

"Karmaşık, dinamik e-posta" ile, şablona dayalı HTML e-posta gövdesi kastediyorsanız, bunu Play 2.0 ile de yapabilirsiniz.

Sadece Örneğin mailBody.scala.html için, bir şablona dayalı yeni bir görünüm oluşturmak zorunda:

@(user:User) 

<h3>Welcome @user.name</h3> 
<br/> 
.... 

Ardından e-posta gönderir senin yönteminde, sadece bakış render() yöntemi çağırmak zorunda:

public static void sendMail(User user) { 

    MailerAPI mail = play.Play.application().plugin(MailerPlugin.class).email(); 
    mail.setSubject(...); 
    mail.addRecipient(user.email); 
    mail.addFrom(...); 

    String body = views.html.mailBody.render(user).body(); 
    mail.sendHtml(body); 

} 
+0

Haha, bunu yeni keşfettim, adam bu çerçeveyi seviyorum! Sadece bir tane daha fazla soru: .toString() arasındaki fark nedir ve öneriniz: .body() ?? – adis

+0

Kaynak kodundan aynı: https://github.com/playframework/Play20/blob/master/framework/src/play/src/main/scala/play/api/templates/Templates.scala#L28 –