在Play Framework 2.1.4中处理空查询

时间:2013-10-23 13:54:31

标签: playframework playframework-2.1

我在Play 2.1.4项目中有一个搜索功能,可以路由到/ search /:query。

我如何处理用户在不添加查询的情况下进行搜索的情况? 自Play 2.1以来,可选参数已经消失,我不相信使用不同的路线是一个非常好的解决方案。

1 个答案:

答案 0 :(得分:3)

实际上两条路线有什么问题?从逻辑的角度来看,这是两个单独的操作:使用param的路由应该初始化搜索过程,而空的应该显示空的搜索表单或进行一些重定向。

GET     /search/:term   controllers.Application.search(term: String)
GET     /search         controllers.Application.blankSearch

Optionaly你可以使用一个默认值的路由(即空字符串),这是一种干净的方法,因为普通的HTML表格会以完全要求的格式发送请求:

GET     /search         controllers.Application.search(q: String ?= "") 

(请求:http://domain.loc/search?q=Looking+for+something