Grails动态更新模板属性

时间:2011-08-25 11:15:03

标签: templates grails plugins

我在gsp页面中有以下g:render标记:

<g:render template="/artist/rate" model='[artistID: 1, rating: 5]' />

在_rate模板中,我使用RichUI渲染一个星级评分插件:

<div id="artist${artistID}">
   <richui:rating dynamic="true" id="${artistID}" units="5" rating="${rating}"  controller="rating" action="rate"  />   
</div>

我需要的是能够在运行时动态更改“model”属性。 我尝试了一个非常天真的解决方案,其中使用JQuery来更改属性。像这样:

$(g:render).attr('model','[artistID: 1, rating: 3]')

但很快我意识到它不起作用,因为从gsp页面生成的html不包含g:render标记,因为它在渲染插件时被替换。

有没有办法实现这个目标? 非常感谢。

1 个答案:

答案 0 :(得分:1)

您需要一个控制器来确定要渲染的模型的值,然后将更新/更改的模型传递给gsp渲染标记。

控制器应该负责将正确的模型传递给视图,所以在那里做。