2015-10-22 23 views
-1

我正嘗試創建一個簡單的導航欄,其中包含使用Spring Boot和Thymeleaf的其他網站/服務器的鏈接。我想將這些URL存儲在我的'application.properties'中,並通過th:href訪問它們。當我嘗試訪問它們時,它不會將我重定向到此URL。如何將URL存儲在屬性文件中並使用Spring和Thymeleaf在模板中訪問它們

下面是HTML:

<li class="dropdown-submenu"> 
    <a tabindex="-1" href="#">Menu</a> 
    <ul class="dropdown-menu"> 
     <li><a th:href="#{foo.bar}">Selection 1</a></li> 

在application.properties:

foo.bar=http://www.example.com 
+0

收緊HTML – Rob

回答

3

事實證明,這個符號的作品:

<li class="dropdown-submenu"> 
<a tabindex="-1" href="#">Menu</a> 
<ul class="dropdown-menu"> 
    <li><a th:href="@{${@environment.getProperty('foo.bar')}}>Selection 1</a></li> 
0

/#{foo.bar}應指向其不被配置在填充你的MessageSouce值(即Spring Boot中的application.properties),而是查看MessageSource文件(即Spring Boot中的messages.properties)。這會讓你的模板不變。

否則,如果你在配置foo.bar,並希望不要重複屬性你可以注入foo.bar這樣

//內部控制器類

@Value("${foo.bar}") 
String myUrl; 

@RequestMapping("/mine") 
public ModelAndView viewWithFooBarLink() { 
    ModelAndView mav = new ModelAndView("templateWithFooBarReference"): 
    mav.put("linkRef", myUrl); 
    return mav; 
} 

你的看法

<li class="dropdown-submenu"> 
     <a tabindex="-1" href="#">Menu</a> 
     <ul class="dropdown-menu"> 
      <li><a th:href="${linkRef}">Selection 1</a></li> 

此信息的良好參考。 http://www.thymeleaf.org/doc/articles/standarddialect5minutes.html

相關問題