Grails,createLink 生成错误的链接

标签 grails url-mapping

我在使用 createlink 时遇到了一个奇怪的问题。我的 gsp 里有这个

<g:createLink controller="uni" action="show" id="1" />

我希望它会生成类似的内容

"/uni/show/1"

然而,它实际上给了我

"/uni/create?id=1"

我也尝试过内联版本,

${createLink(controller:'uni', action:'show', id:1) }

这也给出

"/uni/create?id=1"

非常感谢任何帮助!谢谢!

更新

我设法通过添加“显示”操作的 url 映射来修复它

问题可能来自 url 映射错误。 我在我的 urlmappings.groovy 中定义了这个

    "/uni/create"(controller:"uni"){
        action = [GET:"create", POST:"createDetail"]
    }

这会以某种方式导致它生成错误的链接。我不知道为什么,如果有人能解释一下就好了

在“create”之前添加此行后,问题就消失了。

    "/uni/show/$id"(controller:"uni",action:"show")

最佳答案

您可能在 UrlMappings.groovy 中遇到问题。

有一些open bugs在反向 url 映射中。您使用的 Grails 版本是什么?

解决一些错误的最佳方法是使用 named url mappings 。在你的情况下,这应该是没有必要的。

关于Grails,createLink 生成错误的链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10179807/

相关文章:

javascript - JS 级别的 Grails 授权

grails - 在 grails 中验证密码和确认密码的最佳方法是什么?

grails - 如何在Grails GSP中保存复合字段值?

mysql - 上传的文件 - 数据库与文件系统,使用 Grails 和 MySQL 时

grails - 如何将浏览器中 View 的URL映射到一个特定名称?

grails - 尝试使组具有在Grails中拥有自己的URL的能力。 (类似于您如何浏览至facebook.com/{username})

grails - 如何在Grails的编辑 View 中显示多选列表框中的所有选定选项?

parsing - parse_url相当于grails/groovy吗?

Grails UrlMappings 用于未知数量的变量

grails - Grails中的URL映射问题:参数不正确