render

用途

使用一个内置的或者用户自定义的 Groovy 模板,这个模板可以作为接口,单例或者一个list使用.

示例

domain class:

class Book {
     String title
     String author
}

template:

<p>${it.title}</p>
<p>${it.author}</p>

无论是一个list,还是单独的,这个模板能被重复的使用.每个接口都可以重复的使用模板的list.

<g:render template="displaybook" collection="${books}" />

<g:render template="displaybook" bean="${book}" />

或者您可以创建一个模板来处理特定类型的模式:例如模板如下:

<p><%= book.title %></p>
<p><%= author.fullName %></p>

使用模板如下:.这个技术缺点,模板少,可重复利用.

<g:render template="displaybook" model="['book':book,'author':author]" />

它也可以确定变量的名称,使用模板渲染标记.

模板示例:

<p>${myBook.title}</p>
<p>${myBook.author}</p>

render调用模板的示例

<g:render template="displaybook" collection="${books}" var="myBook"/>

描述

注意的是:如果模板的属性值是以一个'/'开始,解决视图文件夹的相对路径.这是非常有用的两个视图之间共享.如果没有'/',以当前controller视图的文件夹为相对位置解决.如果失败了,将往上一层视图文件夹去找.在这种情况下模板文件名称必需以 '_' 下划线开头,但是在模板属性中是没有下划线或者.gsp后缀的.

属性

来源

查看 render章节