【问题标题】:Groovy: parametrized link tagGroovy:参数化链接标签
【发布时间】:2009-06-05 08:06:59
【问题描述】:

我有以下 gsp 页面:

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

生成的网址如下

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 (或 a 将 par var=value 作为帖子)

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

非常感谢。

路易斯

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

【问题讨论】:

  • 我现在开始运行了。我想结束这个问题,因为它不再相关。
  • 如果您运行了,请“回答”您的问题并将答案标记为正确。

标签: grails groovy controller


【解决方案1】:

发布的代码是正确的。 我刚刚重启了服务器。

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

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

对不起。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-08-28
    • 1970-01-01
    • 2021-06-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多