Grails:如何在UrlMappings中为整个组设置参数

时间:2017-03-31 07:09:38

标签: rest grails url-mapping grails-2.5 urlmappings.groovy

我们的Grails 2.5 Web应用程序具有REST API。

我们需要启动新版本的API,以便在UrlMappings.groovy中创建一个组,如下所示:

group ("/v2") {

   "/documents"(resources: 'document') {
     "/meta"(resource: 'documentInfo', includes: ['show', 'update']) 
   }

   "/folders"(resources: 'folder')

   apiVersion = 2
}

关键是参数apiVersion未在控制器操作的params中定义。

如果在每个资源中定义参数,则正确设置参数:

group ("/v2") {

   "/documents"(resources: 'document') {
     "/meta"(resource: 'documentInfo', includes: ['show', 'update']) {
       apiVersion = 2
     }
     apiVersion = 2
   }

   "/folders"(resources: 'folder') {
     apiVersion = 2
   }

}

如何在组级别上正确定义参数?

1 个答案:

答案 0 :(得分:0)

解决方法将使用命名空间...虽然我尝试在组级别定义它不会工作,但你可以尝试一下。但是在资源级别定义甚至可以用于嵌套资源。

group ("/v2") {

   "/documents"(resources: 'document', namespace:'v2') {
     "/meta"(resource: 'documentInfo', includes: ['show', 'update']) 
   }

   "/folders"(resources: 'folder', , namespace:'v2')
}