【问题标题】:How do I redirect a URL in Grails to go to a specific Controller/action?如何将 Grails 中的 URL 重定向到特定的控制器/操作?
【发布时间】:2015-02-19 17:29:48
【问题描述】:

所以,我正在运行我的 grails 应用程序,从 localhost 生成的 URL 是 http://localhost:8888/appname/

当我在 URL 中输入上述链接时,我希望它被重定向到 http://localhost:8888/appname/controller1/action1

这是我的 UrlMappings,

static mappings = {
    "/"(controller: 'controller1', view: 'action1')
    .
    .
    .
}

当我这样做时,我没有得到想要的输出。 URL 不会改变。但是,我得到了想要的页面。但是,页面的某些元素不会加载(例如,我有一个 jqGrid)。

请帮忙!

【问题讨论】:

    标签: url grails redirect jqgrid mappings


    【解决方案1】:

    你应该这样做

    "/"(controller: 'controller1', action: 'action1')
    

    即代替view,它应该是action

    【讨论】:

    • 也试过了。但是,遇到了同样的问题。
    【解决方案2】:

    "/"(redirect: [controller: 'controller1', action: 'action1'])

    https://grails.github.io/grails-doc/latest/guide/theWebLayer.html#redirectMappings

    【讨论】:

    • 试过这个。但得到以下错误。 “无法建立控制器名称以调度 [null]。动态闭包调用返回 null。检查您的映射文件是否正确,将控制器名称分配为请求参数时,它不能是可选令牌!”
    • 您是否尝试过其他格式,`"/"(redirect: '/controller1/action1')?另外,您使用的是什么版本的 Grails? url 映射中的重定向似乎已在 Grails 2.3 中引入。
    • 是的,我也试过了。同样的错误。我正在使用 2.3.7!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-01-05
    • 2016-09-13
    • 1970-01-01
    • 2021-11-21
    • 2018-04-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多