Grailsバージョン3.1.12を使用しています。いくつかのアクションでデフォルトURLマッピングを無効にする方法
手動で管理するために、アクションのデフォルトのURLマッピングを無効にしたいとします。例えば、コントローラを与えられた:
class MyController {
myAction() {
render('Hello')
}
}
このアクションマップは、デフォルトでmy/myAction
に、しかし私は、このマッピングを無効にして、UrlMappings.groovyで定義されたこの1のようなカスタムのものを使用する:
static mappings {
"/$controller/$action?/$id?(.$format)?"{
constraints {
// apply constraints here
}
}
'/myCustomAction'(controller: 'my', action: 'myAction')
}
/$controller/$action...
マッピングは初めてGrailsプロジェクトを作成するときにデフォルトで出荷され、まだ他のいくつかのアクションに対して必要なデフォルトの規約が用意されていますが、myAction
のデフォルトマッピングを除外します。しかし、エンドポイントmy/myAction
は、デフォルトのマッピングに応え続ける
static excludes = ['/my/myAction']
:私はUrlMappings.groovyでexcludes
設定を使用して試してみました。
希望の動作を達成するにはどうすればよいですか?
'' '?それは '' myController/myAction'''ではないでしょうか? – dsharew
@DegenSharew Grailsの規約は 'controllerName/actionName'です。この名前にはクラス名の「Controller」部分が含まれていません。 http://docs.grails.org/3.1.12/guide/single.html#urlmappingsを参照してください。 – tcrespog