我正在尝试使用springMvc和thymeleaf创建一个编辑表单。输入字段未填充控制器返回的值。
控制器:
@RequestMapping(value = "updatecustomer")
public String search(@ModelAttribute("customerDto") CustomerDto customerDto, Model model) {
Customer customer = service.search(customerDto);
model.addAttribute("customer", customer);
return "mypage";
}
形成:
<form method="post" th:action="@{updatecustomer}" th:object="${customerDto}">
<label>Email: </label><input type="text" th:field="*{email}" />
<input type="submit" />
</form>
在浏览器上生成的html:
<input type="text" id="email" name="email" value="">
调试显示值存在于控制器中并返回查看,但电子邮件输入值为空白。
请指教。
最佳答案
在您的Thymeleaf代码中,将customerDto绑定到表单
th:object="${customerDto}"
您要将控制器中的客户数据传递给客户属性名称的位置
model.addAttribute("customer", customer);
您应该匹配这两个。例如,将您的Thymeleaf代码更改为此
th:object="${customer}"