为Grails邮件插件生成HTML邮件模板的最佳方法是什么?

时间:2013-06-04 11:12:41

标签: grails html-email grails-plugin grails-2.0

使用Grails Mail plugin,您可以发送纯文本或HTML邮件。发送这样的html邮件时:

sendMail {
  to "fred@g2one.com"
  subject "Hello John"
  html(view: htmlTemplate, model: args)   
}

建议在邮件html中使用css内联,因为它会被更多邮件客户端接受。问题是,这些html文件难以阅读和维护。

有没有办法以比编写内联css更聪明的方式生成这些邮件模板?生成HTML邮件模板的最佳做法是什么?

2 个答案:

答案 0 :(得分:2)

模板可以使用g:render标记包含其他模板。

如果您不希望将内联css与您的邮件html混合,请将其放在自己的模板中,并使用render标签将其插入到html模板中:

邮件/ _css.gsp:

<style type="text/css">
    body {
      /* styles! */
    }
</style>

邮件/ _message.gsp:

<html>
    <head>
        <g:render template="/mail/css" /> <!-- render stylesheet into this template -->
    </head>
    <body>
        <!-- content -->
    </body>
</html>

答案 1 :(得分:1)

我创建了一个关于如何按照良好模式进行操作的要点。

https://gist.github.com/biniama/7ec152189512c318c6fa