Я хочу полностью заменить некоторые элементы веб-страницы, используя параметризованные фрагменты с ThymeLeaf + Spring Boot.
public class Admin {
private Integer id;
public Admin(Integer id) {
this.id = id;
}
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
@Override
public String toString() {
return "Admin{" +
"id=" + id +
'}';
}
}
@Controller
publi c класс AdminController {
@GetMapping("/admin-reload")
public String reloadElementDiv(Model model) {
Admin adminObj = new Admin(3);
model.addAttribute("adminObj", adminObj);
model.addAttribute("id", adminObj.getId());
return "/fragments/adminForm";
}
}
ресурсы / шаблоны / фрагменты / adminForm. html
<div th:fragment="admin_form(adminObj, id)" >
<form th:object="${adminObj}">
<p th:text="${id}"></p>
</form>
</div>
ресурсы / шаблоны / индекс. html
<div th:fragment="admin_form(adminObj, id)">
</div>
в одну сторону:
<div th:replace="fragments/adminForm :: admin_form(adminObj, id)" th:with="adminObj='${adminObj}', id='${id}'">
<p th:text="${id}"></p>
</div>
или в другую сторону:
<div th:replace="fragments/adminForm :: admin_form(adminObj, id)">
<p th:text="${id}"></p>
</div>
Итак, в результате у меня есть только параметр 'id' в моем index. html веб-странице, но не его значение id = 3, как я установил в классе контроллера. Может ли кто-нибудь помочь мне получить то значение, которое мне нужно?