我有一个由Thymeleaf控制的选择
<select th:field="*{customer}">
<option th:each="customer: ${customers}" th:value="${customer.id}" th:text="${customer.name}"></option>
</select>
此选项显示数据库的所有客户。
如何使用我从这里获得的ID显示客户:
@GetMapping("/add")
public String addRoute(Model model) {
model.addAttribute("route", new RouteCommand());
/*User userAux = (User) SecurityContextHolder.getContext().getAuthentication().getPrincipal();
model.addAttribute("customer", userAux.getCustomer().getId());*/
return "admin/routes/add";
}
评论的代码获取我想在select中显示的值的ID。
答案 0 :(得分:1)
我不确定下面是否有效,但您可以尝试,因为我没有工作区来测试解决方案,而且我假设您使用的是Spring Security Tag并且用户已登录
<sec:authentication property="principal.customer.id" var="cId" scope="page" />
<select th:field="*{customer}">
<option th:each="customer: ${customers.?[id == __${cId}__]}" th:value="${customer.id}" th:text="${customer.name}"></option>
</select>