2

次のように、動的マッピングクロージャー内でコントローラー名を取得しようとしています:

"/admin/$controller/$action?/$id?"{
    controller = {
        "${controllerName}Admin"
    }
}

「/admin/[コントローラ名]」へのすべてのリクエストを「[コントローラ名]Admin」という名前のコントローラにマッピングするように強制します。「controllerName」変数はクロージャーの外側では機能しますが、内側では機能しません。

それ、どうやったら出来るの?

どうもありがとうございました!

4

1 に答える 1

0

考えられる解決策の1つは次のとおりです。

    "/admin/$controller/$action?/$id?"{
        controller = {
            def controllerName = (request.requestURI - request.contextPath).split('/')[2]

            // or
            //def controllerName = request.servletPath.split('/')[2]

            "${controllerName}Admin"
        }
    }
于 2013-02-02T14:48:16.270 に答える