2009-06-05 30 views
1

我有以下的GSP页:Groovy:在参数化的链接标签

<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作为get或post)。

在ticketMngmnt控制器我有以下代码,其中 不能捕获参数的值。

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

    ... 
} 

,当然它总是打印

params.incidentMngmntId null 

的问题是双重的: 首先,有可能在GSP水平,以产生形式 http://localhost:8080/smtool/ticketMngmnt/list?incidentMngmntId=94 的链路(或一个给票面VAR =值后)

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

非常感谢。

路易斯

PS:顺便说一句,该值是正确

+0

我现在运行了。我想结束这个问题,因为它没有更多的相关性。 – Luixv 2009-06-05 08:32:57

+1

如果您运行正常,请“回答”您的问题并将答案标记为正确。 – 2009-06-05 09:17:36

回答

1

张贴的代码是正确的,因为它是。 我刚刚重新启动服务器,那是。

唯一想在链路

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

对不起改变是不必要的ID。