urlmappings更改 - grails 2到3升级

时间:2017-02-06 21:12:49

标签: grails

我的UrlMappings.groovy中有以下映射:

"/$controller/$action?/$id?/$id2?/$id3?" {constraints {}}

给出请求网址xcontroller/xaction/xid1//xid3(注意//

grails 2.x将生成id和id3的值,但不会生成id2。这就是我所期望的。

在grails 3.2.5中,此url仅生成id1和id2值(xid3变为id2)。看来//被忽略了。

让其他人遇到过这个问题吗?这是一个错误或期望的变化吗?

1 个答案:

答案 0 :(得分:1)

我认为旧行为是一个错误,新行为是首选。像//这样的空路径段应该解决为空白,并且以下所有URL应该是等效的:

http://host/foo/bar
http://host/foo//bar
http://host/foo/./bar

RFC3986讨论了URI语法。

您可以使用像0这样的虚拟值作为"缺少"的占位符。组件。