在没有g:link的情况下为grails中的链接创建字符串

时间:2013-01-09 16:07:09

标签: grails gsp

在如下标签中:

<a data-url="/new/request/showText/${requestInstance.id}"> view text</a>

有没有办法不像我那样对网址进行硬编码?

我尝试使用<g:link action="showText" id="${requestInstance.id}">但是会​​渲染到锚标记。

我正在做的事情可能会被发现,但我只是好奇是否有更好的方法在grails中这样做?

2 个答案:

答案 0 :(得分:9)

您可以使用

${createLink(action:'myaction',params:[datasetId:dataset.id])}

完全控制。它只返回http://myapp/myaction/123之类的内容,并支持g:link支持的所有参数。

更具体一点:

<a data-url="${createLink(action:'showText',id: requestInstance.id)}"> view text</a>

应该有用。

答案 1 :(得分:1)

您可以使用createLink内的${..}功能。

所以在你的情况下,这将是:

<a data-url="${createLink(controller: 'yourController', action: 'yourAction', params:[param1: 'value1'])}"> view text</a>