Groovy:参数化链接标记

时间:2009-06-05 08:07:00

标签: grails groovy controller

我有以下gsp页面:

<g:def var="incidentMngmntId" value="${incidentMngmntInstance?.id}"/>
<g:link controller="ticketMngmnt" 
        action="list" params="[incidentMngmntId : incidentMngmntId]"
        id="${incidentMngmntInstance?.id}"> Tickets
</g:link>

生成的URL如下

http://localhost:8080/smtool/ticketMngmnt/list/94

事实并非如此。 (我的目的是生成一对var = value作为获取或发布。)

在ticketMngmnt控制器中,我有以下代码 无法捕捉参数的值。

 def list = {       
    def incidentMngmntId = params.incidentMngmntId
    println "params.incidentMngmntId " + incidentMngmntId

    ...
}

当然它总是打印

params.incidentMngmntId null

问题有两个: 首先,可以在gsp级别生成表单的链接 http://localhost:8080/smtool/ticketMngmnt/list?incidentMngmntId=94 (或将a par var = value作为post)

其次,如果不是 - 该链接仍为 http://localhost:8080/smtool/ticketMngmnt/list/94 - 那么问题是如何在控制器上读取值 94

提前多多感谢。

路易斯

PS:BTW,值 94 是正确的

1 个答案:

答案 0 :(得分:1)

发布的代码是正确的。 我刚刚重新启动服务器,那就是。

唯一想改变的是链接上不必要的ID

<g:def var="incidentMngmntId" value="${incidentMngmntInstance?.id}"/>
<g:link controller="ticketMngmnt" 
    action="list" params="[incidentMngmntId : incidentMngmntId]">
    Tickets
</g:link>

对不起。