如何将实例从一个gsp渲染到另一个gsp

时间:2016-08-22 11:52:15

标签: grails

我有一个gsp,我想从现有的gsp渲染一个新的gsp。

我用过:

Start Date  Start Time      Duration (Hours)    Usage(kWh)
1/3/2016    12:28:00 PM     2.233333333         6.23
1/3/2016    4:55:00 PM      1.9                 11.45
1/4/2016    6:47:00 PM      7.216666667         11.93
1/4/2016    7:00:00 AM      3.45                9.45
1/4/2016    7:26:00 AM      1.6                 7.33
1/4/2016    7:32:00 AM      1.6                 4.54

但是我没有从新gsp中获取实例中的值。

感谢任何帮助。

2 个答案:

答案 0 :(得分:1)

在这里,我想以其他方式解释渲染。

基本上渲染可用于解析text,gsp或jsp页面。

它在Controller,gsp页面上用于呈现一些文本。因此,如果您知道如何从控制器传递bean或模型,那么您应该在gsp页面上执行相同的操作。例如,在控制器上,您可以执行以下操作:

> date[endpoints(date,on='months')]
[1] "2001-01-29" "2001-02-28" "2001-03-30" "2001-04-29" "2001-05-31"
[6] "2001-06-30" "2001-07-30”

因此,在gsp上你也可以使用类似的标签。

class TestController{
  def show(){
    Object object = Object.get(params?.id)
    render template:'show',model:[instance:object]
  }
}

<g:render template="show" model="['instance':testInstance]"/>

或集合

<g:render template="show" bean="${testInstance}"/>

此处,可以使用变量<g:render template="show" collection="${testInstances}" var="instances"/> 来访问该集合。

对我来说,最重要的是要理解渲染对gsp的作用方式与它除了instances<以外的控制器一样用于支持html。

答案 1 :(得分:0)

你可以这样做:

g:render template="testTemplate" bean="${testInstance}"/

请参阅http://docs.grails.org/latest/ref/Tags/render.html