Groovy   发布时间:2022-04-12  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了使用模板发送电子邮件 – grails大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我想使用模板发送电子邮件.我想要一个GSP文件,我可以在其中设置样式,然后发送电子邮件.目前发送邮件功能如下:

def sendEmail(){

    mailservice.sendMail {
        to "email","**email**"
        from "email"
        subject "Hi"
        body 'Hi'
    }
}

在我的config.groovy文件

grails {
    mail {
      host = "smtp.gmail.com"
      port = 465
      username = "email"
      password = "pwd"
      props = ["mail.smtp.auth":"true","mail.smtp.socketFactory.port":"465","mail.smtp.socketFactory.class":"javax.net.ssl.SSLSocketFactory","mail.smtp.socketFactory.fallBACk":"false"]
    }
 }

我经历了另一个Stack Overflow post:我应该在哪里添加邮件模板?它在views文件夹中?

sendMail{
    multipart true
    to "[hidden email]"
    subject "Subject goes here"
    html  g.render( template: '/emails/mailTemplate')
    inline 'spring@R_616_9016@eInlineImage','image/jpg',new File('./web-app/images/spring@R_616_9016@e.png')
}

updatE

我在电子邮件添加了mailTemplate.gsp,但是它没有工作.

ERROR I GOT找不到名称[/ emails / mailTemplate]和路径[/emails/_mailTemplate.gsp]的模板

解决方法

您可以使用groovyPageRenderer.render()来解析您的电子邮件.下面是一个例子:

class Mailingservice {

    def groovyPageRenderer
    def mailservice

    def yourFunction(User user) {

        def content = groovyPageRenderer.render(view: '/mails/myTemplate')
        mailservice.sendMail {
            to user.email
            from "email@test.com"
            subject "MySubject"
            html(content)
        }
    }
}

在这种情况下,模板位于:/views/mails/myTemplateFile.gsp

希望这可以帮助.

编辑:
渲染可以与模型一起使用.例:

groovyPageRenderer.render(view:'/mails/myTemplate',model:[user:user])

EDIT2:我忘了在第一个回复中@L_267_13@mailservice

@H_607_50@

大佬总结

以上是大佬教程为你收集整理的使用模板发送电子邮件 – grails全部内容,希望文章能够帮你解决使用模板发送电子邮件 – grails所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。