2011-05-23 87 views
1

我有一个域类,我希望在运行时执行数据库调用,以将对象列表作为属性填充。我有一棵树,一个“headMember”财产和财产是具有如下功能的对象:Grails GSP渲染问题

def marriages = { 
    def marriages = Marriage.findAll("from Marriage as m where m.mainMember.name=:name", [name:name]) 
    return [marriages:marriages] 
} 
在我GSP

,我用${tree?.headMember?.marriages}访问被传递到模型的“headMember”属性从下面的函数的相关负责人认为“树”:

def show = { 
     def tree = Tree.get(params.id) 
     render(view:'show', model:[tree:tree]) 
    } 

当我在浏览器中查看,我得到:

[email protected] 

,我所期待的列表。

任何想法我做错了什么?

干杯。

回答

1

当你打电话结婚时,你打电话给一个关闭,并且这个关闭被返回。我认为你应该返工这是一个方法,类似的东西:

static transients = ['marriages'] // tell hibernate that marriages is not a persistent property 

List<Marriages> getMarriages(){ 
    return Marriage.findAll("from Marriage as m where m.mainMember.name=:name", [name:name])  
} 

这样,当你在你的GSP叫${tree?.headMember?.marriages},该getMarriages()方法被调用,应返回婚姻的名单。

+0

你能展示你的Tree和headMember域类是怎么样的? – jjczopek 2011-05-23 16:16:44

+0

我在实施解决方案时实际发生了错误。它工作正常!非常感谢:-) – rjbell00 2011-05-23 16:19:41

+0

很高兴听到;) – jjczopek 2011-05-23 16:31:24