Визуализировать шаблон в строку? - PullRequest
20 голосов
/ 24 января 2012

Можно ли "визуализировать" шаблон в строку?Я хотел бы использовать шаблон и заполнить его некоторыми значениями, которые я затем должен сохранить на локальный диск.

Метод рендеринга всегда отправляет шаблон клиенту.Я хочу, чтобы что-то похожее запускало шаблон, но сохранил вывод из шаблона в локальную строковую переменную, которую я могу сохранить в локальной файловой системе.

Ответы [ 2 ]

22 голосов
/ 24 января 2012

Это проще, чем вы думаете:

def myTemplateString = g.render(template: "test", model: [foo: bar])
14 голосов
/ 24 января 2012

Если вы используете Grails 2.x, вы можете использовать класс PageRenderer.Попробуйте что-то вроде этого:

     grails.gsp.PageRenderer groovyPageRenderer

     void methodName() { 
         def contents = groovyPageRenderer.render(template:"yourTemplate", model:yourModel)
         //you can use contents as a string now
     }

Это будет работать и за пределами веб-запроса, например, при запланированном задании или веб-службе.

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