【发布时间】:2018-08-30 11:32:25
【问题描述】:
这里的问题是我不知道应该在哪个变量中保存模板中的信息
控制器方法:
@PostMapping("/users/register")
public String register(UserCreateRequestModel viewModel, Model model){
if (this.userService.register(viewModel.getUsername(), viewModel.getPassword())){
return "redirect:/";
}
model.addAttribute("viewModel", viewModel);
return "users/register";
}
模板:
<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org" lang="en">
<head>
<meta charset="UTF-8">
<title>Register</title>
</head>
<body>
<h1>Register here</h1>
<form th:object="${viewModel}" method="post">
Username: <input th:field="*{username}" name="username" type="text" /></br>
Password: <input th:field="*{password}" type="password" /></br>
<input type="submit" value="Register" />
</form>
</body>
</html>
此代码正在运行,但我无法理解如何说我希望将输入字段中的信息填充到 UserCreateRequestModel 中。这段代码对我来说太神奇了。我正在搜索注释,但找不到。
【问题讨论】:
-
使用@RequestBody UserCreateRequestModel viewModel
-
这不起作用
-
在模板中使用 spring form 标签并提及 modelAttribute=viewModel
-
我找到了解决方案。是@ModelAttribute,但你提到它是控制器中方法的属性
标签: java spring templates spring-boot thymeleaf