Routes 为什么这条简单的路线没有';不行?

Routes 为什么这条简单的路线没有';不行?,routes,playframework-2.0,Routes,Playframework 2.0,显示了将动态参数绑定到URL的方法: GET/clients/:id controllers.clients.show(id:Long) 我想在我的应用程序中做完全相同的事情。但是当我写GET/Category/getAttributes/:id controllers.Category.getAttributes(id)并转到http://localhost:9000/Category/getAttributes?id=4fce5fc51712ccf77afa7439我收到未找到操作错误,我的

显示了将动态参数绑定到URL的方法:

GET/clients/:id controllers.clients.show(id:Long)

我想在我的应用程序中做完全相同的事情。但是当我写
GET/Category/getAttributes/:id controllers.Category.getAttributes(id)
并转到
http://localhost:9000/Category/getAttributes?id=4fce5fc51712ccf77afa7439
我收到
未找到操作
错误,我的路线如下所示。正确的路线在那里


问题是:我错过了什么?我的PLay应用程序中的路由对其他请求也适用,这是唯一一个具有动态参数的请求。

使用
String
类型,我怀疑
4fce5fc51712cfc77afa7439
是否可以被视为

GET /clients/:id    controllers.Clients.show(id: String)
当然,不要忘记修复控制器和模型中
id
的类型

编辑:Ech,我错过了第二个重要更改,此路由的URL应该没有
?id=

http://localhost:9000/Category/getAttributes/4fce5fc51712ccf77afa7439

使用
字符串
类型,我怀疑
4fce5fc51712ccf77afa7439
是否可以被视为

GET /clients/:id    controllers.Clients.show(id: String)
当然,不要忘记修复控制器和模型中
id
的类型

编辑:Ech,我错过了第二个重要更改,此路由的URL应该没有
?id=

http://localhost:9000/Category/getAttributes/4fce5fc51712ccf77afa7439

类型不是问题,默认情况下是
String
。URL是我的问题,谢谢修复!很高兴它能工作,当然使用反向路由您不需要关心URL语法,请始终创建正确的URL语法,否则将抛出编译错误,这有助于确保在“手动”编写路径类型时不会遗漏某些内容,默认情况下是
String
。URL是我的问题,谢谢修复!很高兴它能工作,当然使用反向路由您不需要关心URL语法,请始终创建正确的URL语法,否则将抛出编译错误,这有助于确保在“手动”编写路径时不会遗漏某些内容