Grails: как привязать данные к экземпляру GroovyPagesTemplateEngine? - PullRequest
0 голосов
/ 11 октября 2010

Я пытался привязать данные к шаблону, созданному с помощью GroovyPagesTemplateEngine, но не смог. Вот то, что я могу, насколько я могу пойти. Может ли кто-нибудь помочь? Спасибо!

import org.codehaus.groovy.grails.web.pages.GroovyPagesTemplateEngine
import org.springframework.core.io.FileSystemResource

File myfile = new File("c:\\myTools\\mydata.gsp")
def engine = new GroovyPagesTemplateEngine()

def data = ['data':'test']       

def template = engine.createTemplate(new FileSystemResource(myfile))

Я пробовал template.make (data), но не работает .....

Ответы [ 2 ]

1 голос
/ 11 октября 2010

Попробуйте это:

import groovy.text.SimpleTemplateEngine

def engine = new SimpleTemplateEngine()
String templateContent = new File('c:/myTools/mydata.gsp').text
def binding = [data: 'test']

String rendered = engine.createTemplate(templateContent).make(binding).toString()
0 голосов
/ 08 марта 2012

Это должно работать для вас:

def templateText = """
  <h1>Hello $who</h1>
"""
def output = new StringWriter()
groovyPagesTemplateEngine.createTemplate(templateText, 'sample').make([who:'World']).writeTo(output)
render output.toString()

Просто включите groovyPagesTemplateEngine через внедрение зависимостей, так же, как вы бы ссылались на службу.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...