1

我正在尝试缩短 URL 以访问我的 grails 应用程序。目前我能做到的最短的是

http://myserver:8080/helloWorld/helloWorld/

HelloWorld 是控制器名称和应用程序名称。我可以以某种方式缩短它吗?

http://myserver:8080/helloWorld/

我将 URL 映射设置为

class UrlMappings {

    static mappings = {
        "/$controller/$action?/$id?"{
            constraints {
                // apply constraints here
            }
        }

        "/"(view:"/index")
        "500"(view:'/error')
    }
}
4

2 回答 2

3

You can make HelloWorldController the default URL by changing

"/"(view:"/index")

to

"/"(controller: 'helloWorld')

This uses the default action in that controller (likely index()); if you want a different action, do this:

"/"(controller: 'helloWorld', action: 'theOtherName')
于 2013-07-26T22:18:19.850 回答
3

如果您只有一个控制器,则无需在 URL 中包含它。您可以使用以下映射:

static mappings = {
    "/$action?/$id?"(controller:'helloWorld')
    "500"(view:'/error')
}

在这种情况下,http://myserver:8080/helloWorld/将转到HelloWorldController.index()而不是提供index.gsp视图。

前导helloWorld也是可选的。将这些行添加到您的Config.groovy以使用根上下文:

grails.app.context = "/"
grails.serverURL = "http://myserver:8080"

结合这两者将允许您通过http://myserver:8080/.

于 2013-07-26T22:26:22.470 回答