Grails:模板技术

模板技术用于将不同页面间公共的显示内容独立封装起来。
模板页面是以"_"开头的".gsp"文件,存放在views目录下(template属性以”/“开头)或者controller的views目录下(template属性不以"/"开头)。
在目标页面中,使用<g:render>标签引用模板的内容。
当template中只使用一个数据对象时:
<p>${it.title}</p>
<p>${it.author}</p>
如果使用collecton属性传入集合,则会对集合中的每一个元素重复上述内容。
<g:render template="displaybook" collection="${books}" />
如果使用bean属性传入对象,则只会执行一遍:
<g:render template="displaybook" bean="${book}" />
如果不想使用默认的it作为数据对象的名称,则可以修改:
<p>${myBook.title}</p>
<p>${myBook.author}</p>
然后使用var属性为传入的数据改名:
<g:render template="displaybook" collection="${books}" var="myBook"/>
当template中需要使用多个数据对象时:
<p><%= book.title %></p>
<p><%= author.fullName %></p>
则需要使用model属性传入数据:
<g:render template="displaybook" model="['book':book,'author':author]" />

你可能感兴趣的:(grails)