Grails URL id字段未映射到params

时间:2013-07-11 04:38:26

标签: mongodb grails urlmappings.groovy

这是我的URLmappings.groovy

class UrlMappings {

static mappings = {
    "/$controller/$action?/$id?(.${format})?" {
        constraints {
            // apply constraints here
        }
    }
    "/ewhet/$id"(controller : "ewhet", action : "show")
    "/"(view: "/index")
    "500"(view: '/error')
    }
   }

以下是我的ewhetController show行动:

class EwhetController {
    def index(){

    }
    def show(){
            def ctx = startAsync()
            ctx.start {
                render params
                //render "this invoked!!"
                ctx.complete()
            }
        }
}

现在我输入的网址为:http://localhost:8080/g24/ewhet/abc abc未映射到params.id,当我呈现params时,我会得到一张空地图[:]。如果输入的网址为http://localhost:8080/g24/ewhet/show?id=abc,则id字段会映射到params.id,我会得到:

['id':'abc']

所以我只是想将网址的最后一部分映射到id地图中的params参数而不使用网址中的任何地图(如id=abc),如第7.4节所述。{in Grails documentation那么这怎么可能?为什么我的方法不起作用?

请注意,我没有任何域类,因为我在后端使用无模式mongodb。

1 个答案:

答案 0 :(得分:1)

尝试在更改UrlMappings.groovy后重新加载应用,以确保正确加载新配置。