【发布时间】:2018-04-22 03:19:45
【问题描述】:
我有一个控制器如下
@RequestMapping(value = "/user/{userId}/personal", method = RequestMethod.GET)
public String getUserPersonalInfo(@PathVariable("userId") Integer userId, Model model) throws ServiceBusinessException {
UserBO userBO = userServiceImpl.findUserByUserId(userId);
model.addAttribute("user", userBO);
model.addAttribute("userId", userId);
model.addAttribute("genders", EnumSet.allOf(Gender.class));
model.addAttribute("maritalStatuses", EnumSet.allOf(MaritalStatus.class));
model.addAttribute("ethnicities", EnumSet.allOf(Ethnicity.class));
System.out.println(EnumSet.allOf(Ethnicity.class));
return "personal";
}
请注意以下几点:
这是从 UI 向控制器发出的 GET 调用,然后控制器处理请求并将用户连同其他信息一起返回给视图 (personal.html)。
现在在personal.html 上,我需要有一种方法来编辑此用户信息。因此我正在考虑将此用户数据绑定到 th:form 标签中
然后,此表单将用于向控制器发送发布请求以保存用户所做的更改。
问题是我没有看到任何代码示例已完成此操作。我见过的所有示例,表单都是空的,然后加载页面。用户填写空表单并点击提交,然后此信息将存储在数据库中。
但另一方面,我正在做相反的事情。我需要在页面加载时使用用户对象填充表单,然后在提交时将此表单保存在数据库中。
有人可以指导我这个例子吗?
【问题讨论】:
-
这个问题和你之前的查询here不一样吗?你没有尝试我给出的建议吗?即如何将模型与表单绑定 - 用于新建和编辑
-
是的,做到了.. 感谢您的帮助
标签: javascript forms spring-mvc thymeleaf