我正在使用Play Framework 2.0 for Java,我有一个像http://localhost:9000/project/detail?id=1
这样的查询字符串网址,当这个网址命中时它会调用HTML模板文件,例如。detail.scala.html
。所以我想检查我的HTML文件中的url中是否存在查询字符串。
例如:
@if(existsQueryString)
@showPerticularProductDetail
else
@showAllProductList
请帮助我或给出任何建议。我不想从控制器传递一些变量或任何标志来查看条件。我只是想检查我的HTML里面的url中的查询字符串。
答案 0 :(得分:4)
如果您在Java项目中,可以直接访问请求;如果您在Scala项目中,则可以通过隐式参数访问请求。
在Java项目中,您可以直接使用它来检查queryString:
@if(request.queryString.containsKey("myKey")){
@showPerticularProductDetail
else
@showAllProductList
如果您在Scala项目中,则需要将请求添加为视图的隐式参数:
@(title: String)(implicit request: play.api.mvc.Request)
你的控制器也应声明这个隐含参数:
def detail = Action { implicit request =>
...
myTemplate.render()
}