如何在 Spring Boot 中以表单形式发送枚举值?
How can I send an enum value in a form in Spring Boot?
我想通过表单传递一个 enum 值,如下面 class 所定义:
package com.test.entity.common;
public enum RequestStatus {
PENDING,
APPROVED,
REJECTED
}
形式:
<select th:field="*{selectedRequestType}">
<option value="${T(com.test.entity.common.RequestStatus).PENDING}">PENDING</option>
<option value="${T(com.test.entity.common.RequestStatus).APPROVED}">APPROVED</option>
<option value="${T(com.test.entity.common.RequestStatus).REJECTED}">REJECTED</option>
</select>
为什么这个 return 整个值作为 字符串文字 T(com.test.entity.common.RequestStatus).REJECTED
而不仅仅是 枚举 REJECTED
?有没有办法使用 SpEL 来做到这一点?
刚刚
<option value="PENDING">PENDING</option>
会好的。对于 enum 类型 Spring Boot 可以自动将字符串转换为相关的 enum。
我想通过表单传递一个 enum 值,如下面 class 所定义:
package com.test.entity.common;
public enum RequestStatus {
PENDING,
APPROVED,
REJECTED
}
形式:
<select th:field="*{selectedRequestType}">
<option value="${T(com.test.entity.common.RequestStatus).PENDING}">PENDING</option>
<option value="${T(com.test.entity.common.RequestStatus).APPROVED}">APPROVED</option>
<option value="${T(com.test.entity.common.RequestStatus).REJECTED}">REJECTED</option>
</select>
为什么这个 return 整个值作为 字符串文字 T(com.test.entity.common.RequestStatus).REJECTED
而不仅仅是 枚举 REJECTED
?有没有办法使用 SpEL 来做到这一点?
刚刚
<option value="PENDING">PENDING</option>
会好的。对于 enum 类型 Spring Boot 可以自动将字符串转换为相关的 enum。