如何将控制器中的GSP模板引擎与Grails中的域连接?

时间:2015-05-27 10:51:37

标签: grails controller template-engine

我做了this tutorial以在Controller中使用GSP模板引擎来生成视图。现在我想访问我的控制器中的html里面的数据库,但我找不到好的方法。我想访问我的域名中的列名和模板。

我需要这样做,我知道我可以对gsp文件做同样的事情。

控制器:

class SendEmailController {
def groovyPagesTemplateEngine

def emailTemplate = {   
    def templateText = '''\

    <html>
        <body>
            <h1 align="center">Hello</h1>
                <p align="center">This is my text</p>
        </body>
    </html>
            '''
    def output = new StringWriter() 
    groovyPagesTemplateEngine.createTemplate(templateText, 'sample').make([show: true]).writeTo(output)
    render output.toString()
}   
}

DOMAIN

class SendEmail {
    String name
    String template


    static constraints = {
    }
}

1 个答案:

答案 0 :(得分:0)

您可以通过在域对象类上调用get()(传入要从数据库中检索的记录的id)来检索控制器中的域对象。

def emailTemplate = SendEmail.get(id).template

还有其他一些检索方法。有关更多信息,请参阅GORM文档:https://grails.github.io/grails-doc/latest/guide/GORM.html