如何从Play 2上的路由反向生成URL?

时间:2012-05-14 21:32:43

标签: scala playframework-2.0

在Play 1.4.x下,如果我想反向生成一个URL,我可能会使用以下内容:

Map<String, Object> map = new TreeMap();
map.put("myParam", myParam);
ActionDefinition ad = Router.reverse("MyAction.query", map);
String url = ad.url;

根据可靠的简洁Play 2.x documentation,在Play 2下使用Scala,我应该使用重定向:

val action = Action {Redirect(routes.MyAction.query(myParam))}

但是如何处理获取实际网址的操作呢?

1 个答案:

答案 0 :(得分:11)

val relative = routes.MyAction.query(myParam).url

或绝对

val url = routes.MyAction.query(myParam).absoluteURL()

或绝对https

val securedUrl = routes.MyAction.query(myParam).absoluteURL(true)