如何使用th:each

时间:2018-09-13 17:29:18

标签: spring-boot thymeleaf

我有一个枚举,其中包含4个值,例如创建,保存,批准,enter code here被拒绝,对于这4个值,我有文本要显示在message.properties的前视图页面中,例如i1 = Created,i2 = Saved, i3 =已批准,i4 =已拒绝

我的代码如下。

@RequestMapping(value = "/" , method = RequestMethod.GET, 
produces = {"text/html;charset=UTF-8"})
public String getClaimProcess(Model  model,Locale locale)
{

    EntityTypes[] entityTypeArray = entityTypes.values();
    model.addAttribute("entityTypes", entityTypeArray);
    return "ClaimProcess";
}

<select style="width:60%;" class="form-control" id="sel1">
                <option th:each="entity , index : ${entityTypes}"
                        th:value="${index.index}"
                        th:text="#{i1}"></option> 
</select>

所以我想将i1递增到i2,i3,i4,等等。...请帮帮我

1 个答案:

答案 0 :(得分:0)

为了获取带有动态键的消息,可以使用#messages对象,执行以下操作:

<option th:each="entity , index : ${entityTypes}"
    th:value="${index.index}"
    th:text="${#messages.msg('i' + index.index)}"></option> 

也就是说,构造您要使用的消息密钥的字符串,并将其传递给#messages.msg方法。