替换控制器中的文本并将其放在属性文件中

时间:2017-12-08 07:03:15

标签: java spring thymeleaf

从控制器替换文本并将其放在属性文件

我已经拥有的东西:

我的控制器:

redirectAttrs.addFlashAttribute("userName", "Hello, " + someForm.getName() + " nice to meet you.");

我的百里香

<p class="text-danger" th:text="${userName}">userName</p>

我知道我可以轻松使用我的属性:

我的message.properties:

  

user.name =汤姆

我的百里香:

<a th:text="#{user.name}"></a>

但如果里面有价值,我可以达到我想要的吗?

  

我的user.name =你好,{name}很高兴见到你。

我想做这样的事情:

在我的控制器中:

redirectAttrs.addFlashAttribute("userName", someForm.getName());

在我的百里香中:

<a th:text="#{user.name(name=${userName})}"></a>

这甚至可能吗?在这样的情况下,百里香最终应该是什么样的?

1 个答案:

答案 0 :(得分:1)

更改您的属性值,如下所示:

user.name=Hello, {0} nice to meet you. 

然后传递userName,如下所示:

<a th:text="#{user.name(${userName})}"></a>

规则是您可以使用{0}, {1}, {2}, .... {n}在您的媒体资源中添加多个变量。您可以传递th:text="#{user.name(${param0},${param1},${param2}, ..., ${paramN} )}"

之类的值