如何在 Spring 3 / Thymeleaf 中显示带有参数的本地化消息
我正在使用Spring 3和Thymeleaf制作一些网页,我对如何显示这样的消息感到困惑:
welcome.message=你好{0},欢迎光临!
然后将{0}替换为 thymeleaf 标签内的用户名:
<h1 th:text="#{welcome.message}">Welcome Placeholder</h1>
我甚至不确定{0}是否是捆绑消息的正确语法。
我正在使用Spring 3和Thymeleaf制作一些网页,我对如何显示这样的消息感到困惑:
welcome.message=你好{0},欢迎光临!
然后将{0}替换为 thymeleaf 标签内的用户名:
<h1 th:text="#{welcome.message}">Welcome Placeholder</h1>
我甚至不确定{0}是否是捆绑消息的正确语法。
您可以使用
#{welcome.message(${some.attribute})}
其中 将是替换 时要使用的值。some.attribute
{0}
您应该能够以逗号分隔两者之间的值,以添加更多要使用的值。()
您甚至可以使用计算出的消息键作为参数:
<p th:text="#{messages.msg1(${param1})}"></p>
<p th:text="#{messages.msg2(${param2},${param3})}"></p>
<p th:text="#{messages.msg3(#{${param4}})}"></p>
上面,[msg3]的参数是一个消息键[#{key}],其中键本身是计算的[${param4}]。这样做的好处是,您可以在国际化消息中插入国际化的计算片段。