gpt4 book ai didi

java - 如何在 Grails UrlMappings 中设置默认 Urls?

转载 作者:行者123 更新时间:2023-11-30 08:22:14 25 4
gpt4 key购买 nike

我想为 Grails 添加一个默认的 url 映射。也就是说,如果请求的 url 在 url 映射中没有规则,则应重定向到 home/index。

我的 url 映射目前是:

class UrlMappings {

static mappings = {
"/$controller/$action?/$id?(.$format)?" {
constraints {
// apply constraints here
}
}

"/"(controller:"home", action:"index")

"/admin"(controller:"login",action:"authadmin")
"/robots.txt"(controller:"home",action:"robots")
"/sitemap.xml"(controller:"home",action:"sitemap")

"404"(controller:"home",action:"notfound")
"500"(view:'/error')

"/**"(controller:"home", action:"index")
}
}

我使用最后一个以/** 开头的规则来映射所有在 url 映射中没有特定规则的传入请求。问题是当我将以下内容放入我的 GSP 文件中时

<g:link controller="home" action="index"><div class="MainLogo"></div></g:link>

然后 url 看起来像这样:

http://www.example.com/**

有没有办法解决这个问题?如何为 url 映射中未定义规则的 url 创建默认映射?

最佳答案

我不能说我真的推荐这种方法,因为实际上最好为不存在的页面发回 404,但无论如何我认为解决这个问题的最佳方法是双通配符路径。见:

http://grails.org/doc/latest/guide/theWebLayer.html#mappingWildcards

例如:

   "/$path**"(controller:"home", action:"index")

关于java - 如何在 Grails UrlMappings 中设置默认 Urls?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24576484/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com