为什么 g:link 忽略请求参数



在我的Grails应用程序中,我有一个URL直接映射到UrlMappings.groovy中的视图

"/geolocation"(view: "/geolocation/index")

我正在尝试生成指向此视图的链接,其中包含以下请求参数:

<g:link elementId="btnSrcDest" uri="/geolocation" class="mapInfo" 
        params="[mapType: 'foo']">
    Click me
</g:link>

但这会生成以下 HTML

<a class="mapInfo" id="btnSrcDest" href="/myApp/geolocation">
    Click me
</a>

而我期待这个:

<a class="mapInfo" id="btnSrcDest" href="/myApp/geolocation?mapType=foo">
    Click me
</a>

为什么忽略g:linkparams属性?

如果使用 uri 属性,则假定该属性是完整的(相对于 webapp)链接,不会发生进一步的处理。 您可以尝试将其设置为命名 URL 映射

name geo:"/geolocation" {
  view = "/geolocation/index"
}

,然后使用

<g:link elementId="btnSrcDest" mapping="geo" class="mapInfo" 
        params="[mapType: 'foo']">

相关内容

  • 没有找到相关文章

最新更新