Grails 3 - 从服务中获取渲染视图
Grails 3 - get rendered view from service
我正在使用 Grails Views 并希望将 JSON 从呈现的模板输出的数据存储在数据库中。我不是要将呈现的模板发送给用户,只是为了以后的用户存储它。我怎样才能做到这一点?
参见 http://views.grails.org/1.1.2/#_the_jsontemplateengine 的第 2.9 节。
Template t = templateEngine.resolveTemplate('/book/show')
def writable = t.make(book: new Book(title:"The Stand"))
def sw = new StringWriter()
writable.writeTo( sw )
然后你可以用sw
做任何你想做的事。
我曾在这种情况下使用过 groovyPageRenderer。请参阅此处的页面呈现 API 部分:http://docs.grails.org/2.1.0/guide/introduction.html
class myService {
PageRenderer groovyPageRenderer
String renderTemplate(){
return groovyPageRenderer.render([view: '/path/to/gsp', model:[key1:'val1', key2:'val2']])
}
}
对我来说,这在我 want/need 从 GSP 生成 HTML 的服务的极少数情况下效果很好。
我正在使用 Grails Views 并希望将 JSON 从呈现的模板输出的数据存储在数据库中。我不是要将呈现的模板发送给用户,只是为了以后的用户存储它。我怎样才能做到这一点?
参见 http://views.grails.org/1.1.2/#_the_jsontemplateengine 的第 2.9 节。
Template t = templateEngine.resolveTemplate('/book/show')
def writable = t.make(book: new Book(title:"The Stand"))
def sw = new StringWriter()
writable.writeTo( sw )
然后你可以用sw
做任何你想做的事。
我曾在这种情况下使用过 groovyPageRenderer。请参阅此处的页面呈现 API 部分:http://docs.grails.org/2.1.0/guide/introduction.html
class myService {
PageRenderer groovyPageRenderer
String renderTemplate(){
return groovyPageRenderer.render([view: '/path/to/gsp', model:[key1:'val1', key2:'val2']])
}
}
对我来说,这在我 want/need 从 GSP 生成 HTML 的服务的极少数情况下效果很好。