【发布时间】:2020-01-13 12:58:45
【问题描述】:
为什么 th:field=*{platform} 不起作用
我已尝试添加 th:field=*{platform.platformId} 但它仍然存在
这是错误
org.thymeleaf.exceptions.TemplateProcessingException: Error during execution of processor 'org.thymeleaf.spring5.processor.SpringSelectFieldTagProcessor' (template: "silicon" - line 343, col 47)
这是我的控制器
@PostMapping({"/admin/siliconAdd"})
public String addOrEditSilicon(@Valid @ModelAttribute(name="silicon") Silicon silicon,BindingResult placeValidation,
final RedirectAttributes redirectAttributes,HttpServletRequest request,Model model) {
User user = (User) SecurityContextHolder.getContext().getAuthentication().getPrincipal();
LOG.info(silicon.toString());
if(silicon.getPlatform().getPlatformId() == null) {
silicon.setPlatform(null);
}else {
silicon.setPlatform(platformServiceImpl.getOne(silicon.getPlatform().getPlatformId()));
}
String messageString = null;
Date localDateToday = new Date();
try {
if(silicon.getId() == null) {
messageString = "inserted";
silicon.setDateAdmission(localDateToday);
silicon.setStatusSilicon("AVAILABLE");
silicon.setUserOwner(userServiceImpl.getOne(user.getUsername()));
if(silicon.getUserRequest() != null) {
silicon.setStatusSilicon("ASSIGNED");
siliconServiceImpl.assignSiliconToUser(silicon.getUserRequest(), silicon.getId());
}
}else {
messageString = "updated";
}
Silicon siliconAddOrEdit = siliconServiceImpl.addOne(silicon);
model.addAttribute("silicons",siliconServiceImpl.getAll());
redirectAttributes.addFlashAttribute("success",messageString);
return "redirect:/admin/step2/" + siliconAddOrEdit.getPlatform().getPlatformId();
}catch(Exception ex) {
redirectAttributes.addFlashAttribute("error",messageString);
LOG.info(ex.toString());
return "redirect:/admin/silicon";
}
}
这是百里香部分
<select class="custom-select" th:field="*{platform}" id="platformCurrent">
<option value="">--Select Platform to Assign--</option>
<option th:each="platform : ${platforms}" th:value="${platform.platformId}" th:utext="${platform.name}"></option>
</select>
我该如何解决这个问题?
我想在不查阅数据库的情况下得到整个平台
【问题讨论】:
-
这个 thymeleaf 页面的名称是什么?
-
它被称为硅
-
你有
GetMapping在发布数据之前去silicon页面吗?
标签: java hibernate spring-boot jpa thymeleaf