Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Grails 在控制器中引用hasMany属性_Grails - Fatal编程技术网

Grails 在控制器中引用hasMany属性

Grails 在控制器中引用hasMany属性,grails,Grails,我的用户有一个名为watchlist的hasMany属性,其中包含一定数量的股票符号,我希望在网页上显示该watchlist 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.n

我的用户有一个名为watchlist的hasMany属性,其中包含一定数量的股票符号,我希望在网页上显示该watchlist

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]
}

到目前为止,这将把信息打印到控制台。我是否可以存储该信息并像使用stocks对象一样返回?

您可以将
用户
实例传递到视图(
index.gsp
):

并打印所需的所有信息:

<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>
顺便说一下,您可以在Groovy中运行
return
语句

<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]