2012-10-25 42 views
3

我的用户有一个名为含有一定数量的股票符号的监视列表一个的hasMany财产,我要显示在网页上的监视列表。引用的的hasMany财产控制器

static scaffold = User 

def index() { 
    def stocks = StockSymbol.list(sort: "volume", order: "desc") 
    def a = User.get(1) 
    for(stock in a.watchlist) 
    { 
     println stock.name 
     println stock.volume 
     println stock.price 

    } 
    return [stocks: stocks] 
} 

到目前为止,这将打印信息发送到控制台。无论如何,我可以存储这些信息并像股票对象一样返回。

回答

1

您可以在user实例传递给视图(index.gsp):

return [stocks: stocks, user: a] 

和打印所有信息,你想:

<body> 
    . 
    . 
    . 
    <p>Watchlist of user ${user}</p> 
    <ul> 
    <g:each var="stock" in="${user.watchlist}"> 
     <li>${stock.name} | ${stock.volume} | ${stock.price}</li>    
    </g:each> 
    </ul> 
    . 
    . 
    . 
</body> 

或者你可以只通过观察名单如下:

return [stocks: stocks, watchlist: a.watchlist] 

顺便说一句 - 你可以ommit的Groovy中的声明。