我有一个嵌套的对象,并将其用作表单的模型。
public AgeBracketSet implements Serializable{
private String id;
private List<AgeBracket> ageBrackets;
/* Getters and Setters */
}
我已成功将此对象的所有属性绑定到表单,并且可以在呈现视图状态时可视化其值。 这是我如何使用Thymeleaf的简化版本。 本质上,我遍历列表项并获取其属性。
<form id="bracketForm" role="form" th:action="${flowExecutionUrl}" th:object="${ageBracketSet}" method="post">
<input th:id="'bracketSet_'+*{id}" th:field="*{id}" />
<th:block th:each="bracket,loop : *{ageBrackets}" th:id="'bracket_'+${bracket.id}">
<input th:id="'fromAge_'+${bracket.id}" th:field="*{ageBrackets[__${loop.index}__].fromAge}" />
<input th:id="'toAge_'+${bracket.id}" th:field="*{ageBrackets[__${loop.index}__].toAge}" />
</th:block>
</form>
但是,当我在表单中进行更改并提交时,模型保持不变。 我已经通过调试接收表单数据的服务来确认这一点。 该模型没有在表单中进行更改。 我在这里做错什么吗?