简体   繁体   English

动态播放! 模板链接

[英]Dynamic Play! template links

I"m having trouble generating dynamic links from strings. I have a controller which renders a page: 我无法从字符串生成动态链接。我有一个呈现页面的控制器:

public class ViewController extends Controller {
   public static void index() {
      Map<String, String> breadcrumbsMap = new LinkedHashMap<String, String>();
      breadcrumbsMap.put("Home", "ViewController.index()");
      breadcrumbsMap.put("User", "UserController.index()");

      render(breadcrumbsMap);
   }
}

The page has markup that looks like (but doesn't work): 该页面具有如下标记(但不起作用):

<ul id="breadcrumbs">
    #{list items:breadcrumbsMap.keySet(), as:'key'}
       <li>#{a @breadcrumbsMap.get(key)}${key}#{/a}</li> 
    #{/list}
</ul>

I can't figure out how to make the markup turn the string into a link. 我不知道如何使标记将字符串转换为链接。 From the docs, something standard would be: 从文档中,一些标准是:

#{a @Application.logout()}Disconnect#{/a}
<a href="breadcrumbsMap.get(key)">&{key}</a>

Try 尝试

breadcrumbsMap.put("Home", Router.reverse("ViewController.index()", emptyMap).url);
breadcrumbsMap.put("User", Router.reverse("UserController.index()", emptyMap).url);

And display the link like any string: 并像显示任何字符串一样显示链接:

<a href="breadcrumbsMap.get(key)">${key}</a>

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM