首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >参数'id‘将成为Grails重定向中的查询字符串

参数'id‘将成为Grails重定向中的查询字符串
EN

Stack Overflow用户
提问于 2015-05-27 03:47:52
回答 1查看 528关注 0票数 1

从Grails控制器,我想重定向到这个(使用查询字符串):

/mycontroller/myaction?id=3

我写了这段代码:

代码语言:javascript
复制
def a = 3;
redirect (controller:"mycontroller",action:"myaction",params:[id:a])

该代码将产生:

/肌控制器/肌动作/3

我知道id是一个特殊的参数。它将是url而不是查询字符串。我尝试另一个参数

代码语言:javascript
复制
def name = "John";
redirect (controller:"mycontroller",action:"myaction",params:[name:name])

will生产:

/mycontroller/myaction?name=John

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-05-27 06:48:24

所描述的行为是UrlMappings配置的结果。如果使用默认映射,则id参数将放在所描述的位置$id?中。

代码语言:javascript
复制
class UrlMappings {    
    static mappings = {
        "/$controller/$action?/$id?"{
            constraints {
                // apply constraints here
            }
        }
        "/"(view:"/index")
        "500"(view:'/error')
    }
}

一般来说,这是没有问题的。还可以将id参数设置为查询字符串:

代码语言:javascript
复制
def myaction() {
    def idFromParams = params.id
}

或者您只需重写您的UrlMappings

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30472811

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档